我正在android中创建一个覆盖onCreateOptionsMenu方法的菜单,如下所示:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0, "Blit").setCheckable(true);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == 0)
{
somevar = !somevar;
item.setchecked(somevar);
}
}
问题是从不检查菜单......如何检查我的菜单?
答案 0 :(得分:0)
调用onPrepareOptionsMenu
时,您必须更新所有菜单项。
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
for (int i = 0; i < menu.size(); i++) {
MenuItem item = menu.getItem(i);
if (item.getItemId() == 0)
item.setChecked(somevar);
}
return super.onPrepareOptionsMenu(menu);
}
答案 1 :(得分:0)
对于选中的菜单,您应该使用this类型的菜单。然后你可以有可检查的项目(无,全部,单一)。