parent、view 和 id Parameteris never used 可以重命名为_ (Kotlin)
parent, view, and id Parameteris never used could be renamed to_ (Kotlin)
我正在使用 kotlin 在 andadroid studio 中做一个 lisview,但是当我创建 setOnItemClickListene 时,它告诉我从未使用过的 parent、view 和 id Parameteris 可以重命名为_,我不明白为什么我得到这个我的代码中的警告。
我应该怎么做才能删除此警告?
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val listapaises = arrayOf(
"Colombia", "Argentina",
"Ecuador", "Venezuela",
"Brasil", "Paraguay", "Uruguay",
"Bolivia", "Peru", "Chile"
)
val habitantes = arrayOf(
40_000_000, 17_000_000,
6_500_000, 10_000_000,
30_000_000, 14_000_000,
183_000_000, 44_000_000,
31_000_000, 3_500_000
)
val adaptador1 =
ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listapaises)
lv_lista.adapter = adaptador1
lv_lista.setOnItemClickListener { parent, view, position, id ->
tv_resultado.text = ("${habitantes[position]}")
}
}
}
参见下面的代码:
lv_lista.setOnItemClickListener { parent, view, position, id ->
tv_resultado.text = ("${habitantes[position]}")
}
现在,您看到的警告是因为在本例中未使用的三个 lambda 参数 - parent
、view
和 id
.
它要你做的是用_
替换这三个未使用的参数。这将删除未使用的参数警告,并且在参数为空且标记为非空的情况下还将防止 IllegalArgumentException
。
official docs 声明参数不用时可以用 _
代替。因此,您要做的就是将代码更改为:
lv_lista.setOnItemClickListener { _, _, position, _->
tv_resultado.text = ("${habitantes[position]}")
}
如果您想保留它们以备将来参考,您可以使用 @Suppress("UNUSED_PARAMETER")
取消警告。
我正在使用 kotlin 在 andadroid studio 中做一个 lisview,但是当我创建 setOnItemClickListene 时,它告诉我从未使用过的 parent、view 和 id Parameteris 可以重命名为_,我不明白为什么我得到这个我的代码中的警告。 我应该怎么做才能删除此警告?
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val listapaises = arrayOf(
"Colombia", "Argentina",
"Ecuador", "Venezuela",
"Brasil", "Paraguay", "Uruguay",
"Bolivia", "Peru", "Chile"
)
val habitantes = arrayOf(
40_000_000, 17_000_000,
6_500_000, 10_000_000,
30_000_000, 14_000_000,
183_000_000, 44_000_000,
31_000_000, 3_500_000
)
val adaptador1 =
ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listapaises)
lv_lista.adapter = adaptador1
lv_lista.setOnItemClickListener { parent, view, position, id ->
tv_resultado.text = ("${habitantes[position]}")
}
}
}
参见下面的代码:
lv_lista.setOnItemClickListener { parent, view, position, id ->
tv_resultado.text = ("${habitantes[position]}")
}
现在,您看到的警告是因为在本例中未使用的三个 lambda 参数 - parent
、view
和 id
.
它要你做的是用_
替换这三个未使用的参数。这将删除未使用的参数警告,并且在参数为空且标记为非空的情况下还将防止 IllegalArgumentException
。
official docs 声明参数不用时可以用 _
代替。因此,您要做的就是将代码更改为:
lv_lista.setOnItemClickListener { _, _, position, _->
tv_resultado.text = ("${habitantes[position]}")
}
如果您想保留它们以备将来参考,您可以使用 @Suppress("UNUSED_PARAMETER")
取消警告。