在我的android kotlin项目中,我收到一个错误,说是android。R.id.home未定义。同时,我正在修复的最低android sdk为14。我正在使用Kotlin‘1.0.1-2'。
以下是需要它的代码摘录(它是一个活动,一个简单的活动,而不是AppCompatAcitivity)
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.getItemId()){
is android.R.id.home -> {
NavUtils.navigateUpFromSameTask(this)
return true
}
}
return super.onOptionsItemSelected(item)
}
错误如下:
e: $<path_start_from_my_disc>/AboutActivity.kt: (70, 29): Unresolved reference: home
您使用is
运算符进行相等性检查,而它是一个类型检查运算符(如instanceof
)。如果您只删除is
:,它应该会起作用
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.getItemId()){
android.R.id.home -> {
NavUtils.navigateUpFromSameTask(this)
return true
}
}
return super.onOptionsItemSelected(item)
}