我正在实现上下文菜单并在单击按钮时显示。菜单项应该是单选可点击的行为,因此我使用了group
建议的here。但是,即使我在onContextItemSelected
方法中获得了单击项的事件,单击项(RadioButton)的状态也没有改变。如何使用它更改RadioButton的状态?下面是代码。在 filter_menu_items XML中-
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/itemPromotion"
android:title="@string/service_promotion" />
<item
android:id="@+id/serviceCircular"
android:title="@string/service_circular" />
</group></menu>
活动中-
override fun onCreateContextMenu(menu: ContextMenu?, v: View?, menuInfo: ContextMenu.ContextMenuInfo?){
super.onCreateContextMenu(menu, v, menuInfo)
menuInflater.inflate(R.menu.filter_menu_items, menu)
}
override fun onContextItemSelected(item: MenuItem): Boolean {
//val info = item.menuInfo as AdapterView.AdapterContextMenuInfo
return when (item.itemId) {
R.id.itemPromotion -> {
item.isChecked = !item.isChecked
true
}
R.id.serviceCircular -> {
item.isChecked = !item.isChecked
true
}
else -> super.onContextItemSelected(item)
}
}