1

我需要在我的 Android 应用程序中编辑 MenuItem 的值。但问题是我不想在 OnCreateOptionMenu 中编辑该项目,但我希望它在 MenuHandling 例程之外进行编辑。

我尝试使用该代码,但它不起作用:

Menu myMenu = (Menu) findViewById(R.id.optionsmenu);
menuItem = myMenu.findItem(R.id.timer);
menuItem.setEnable(false);

但它不起作用 myMenu 变量值为 null(我在 Menu xml 标记中添加了一个 id 属性)。我也尝试过这样的事情:

Menu myMenu = (Menu) findViewById(R.menu.options);
menuItem = myMenu.findItem(R.id.timer);
menuItem.setEnable(false);

同样的问题。我也试过:

MenuItem myItem = (MenuItem) findViewById(R.id.timer);
myItem.setEnabled(false);

同样的问题 myItem 为空。那么我如何修改MenuItem?我知道如何在 On*OptionsMenu 方法中进行标识。我需要在这些方法之外做。

提前感谢您的任何帮助/回复。

4

1 回答 1

2

覆盖onPrepareOptionsMenu()你的活动。

请参阅此文档:

http://developer.android.com/guide/topics/ui/menus.html#ChangingTheMenu

于 2011-09-13T11:53:01.097 回答