Java 弹出菜单复选框将不起作用

Java 弹出菜单复选框将不起作用,java,android,xml,Java,Android,Xml,我有一个带有两个复选框的弹出菜单,但当我按下其中一个复选框时,菜单就消失了,它们的状态没有任何变化。我环顾四周,发现对其他人有用的东西,但对我不起作用 public boolean onOptionsItemSelected(MenuItem item) { if(item.isChecked()) { item.setChecked(false); } else { item.setChecked(true);

我有一个带有两个复选框的弹出菜单,但当我按下其中一个复选框时,菜单就消失了,它们的状态没有任何变化。我环顾四周,发现对其他人有用的东西,但对我不起作用

public boolean onOptionsItemSelected(MenuItem item)
{


    if(item.isChecked())
    {
        item.setChecked(false);
    }
    else
    {
        item.setChecked(true);
    }
    switch(item.getItemId())
    {
        case R.id.lockscreen:
            if(item.isChecked()) item.setChecked(!item.isChecked());
            break;
        case R.id.notif:
            if(item.isChecked()) item.setChecked(!item.isChecked());
            break;
        default:
            return super.onOptionsItemSelected(item);

    }


    return true;
}
这是菜单的XML

<group android:checkableBehavior="all">
    <item android:id="@+id/lockscreen"
        android:title="Lockscreen"
        android:checked="false"
        android:checkable="true"/>
    <item android:id="@+id/notif"
        android:title="Notification"
        android:checked="false"
        android:checkable="true"/>

</group>
这些行似乎立即取消选中该项目,如果它是在… 在这个if-else构造中,你想做什么?
只需注释掉它,让其他if语句完成案例中的所有工作。

尝试setselection方法,如element.setSelectedbuttonView.isChecked;这不起作用,因为我没有使用列表视图,它似乎已经完成了,但不知道为什么之前没有,一定错过了什么。
if(item.isChecked()) {
    item.setChecked(false);
}
else {
    item.setChecked(true);
}