在我的Android应用程序中,我有一个带有菜单的活动“A”。我想从另一个活动“B”返回时禁用菜单项。我正在使用方法OnPrepareOptionsMenu和onActivityResult,但我不能这样做。有什么想法吗?
答案 0 :(得分:3)
您可以执行以下操作,但必须覆盖第二个活动的onDestroy方法,并将isEnabled变量设为true。
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
menu.clear();
if (isEnabled) {
menu.add("item").setEnabled(true);
} else {
menu.add("item");
}
return true;
}
答案 1 :(得分:1)
在添加菜单项的位置编写“if”逻辑:
类似的东西:
@Override
public boolean onPrepareOptionsMenu (Menu menu) {
if (isFinalized)
menu.getItem(1).setEnabled(false);
return true;
}
如果这有任何帮助,请告诉我。
答案 2 :(得分:0)
我明白了。我知道了。通过onActivityResult,我返回了一个字符串标志“dev”
@Override
public boolean onPrepareOptionsMenu (Menu menu){
MenuItem m=menu.getItem(0);
if (dev.contentEquals("1")){
m.setEnabled(false);
}
return true;
}
非常感谢Agarwal和Shishir