поэтому я пытаюсь получить свой пункт меню, который отображается на панели действий, чтобы вести себя как контрольный параметр меню. Работает первая часть, что означает, что это можно проверить, и когда я нажимаю ее и устанавливаю в коде setChecked (true), она работает. Но то, что не работает, - это визуальная часть. Нет изменений в том, как элемент меню выглядит на панели действий в проверенных и непроверенных состояниях? Я попытался использовать invalidateOptionsMenu(), но это не делает работу, и не только это, с этой строкой в моем коде я не могу выйти из проверенного состояния?!? Случается, что недействительные швы OptionMenu() отменят выбранное состояние, и я заканчиваю "цикл", или при каждом нажатии этого пункта меню я продолжаю идти к непроверенной части кода, где он проверяется, и с недействительным он получает флажок Я думаю...
Вот код из моего XML файла для меню:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/lenslist_menu_add"
android:showAsAction="always"
android:title="@string/add"/>
<item android:id="@+id/lenslist_menu_delete"
android:showAsAction="always"
android:checkable="true"
android:title="@string/delete"/>
</menu>
И вот код Java:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.lenslist_menu_add:
return true;
case R.id.lenslist_menu_delete:
if (item.isChecked() == true) {
item.setChecked(false);
deleteMode = false;
lensAdapter.setDeleteMode(false);
} else {
item.setChecked(true);
deleteMode = true;
lensAdapter.setDeleteMode(true);
}
lensAdapter.notifyDataSetChanged();
return true;
}
return super.onOptionsItemSelected(item);
}
Спасибо!