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がnullです。次に、MenuItemを変更するにはどうすればよいですか?On*OptionsMenuメソッド内でIDを設定する方法を知っています。私はこれらの方法の外でそれをする必要がありました。

ヘルプ/返信を事前に感謝します。

4

1 に答える 1

2

アクティビティのをオーバーライドonPrepareOptionsMenu()します。

このドキュメントを参照してください:

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

于 2011-09-13T11:53:01.097 に答える