1

Activity私は3つのオプションメニューを持っていますMenuItems

  • 作成
  • 選択する
  • 消去

現在選択されているアイテムがない場合はMenuItem、削除を無効にします。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    final MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.layout.basic_menu, menu);
    this.deleteCharMenu = menu.findItem(R.id.basic_menu_deletechar);
    this.deleteCharMenu.setEnabled(this.current != null);
    return true;
}

ただしonCreateOptionsMenu、メニューを開くたびに呼び出されるわけではありません(試行錯誤してこの結果が得られました)。

MenuItemそこで、値を変更するたびに状態を変更できるように、をクラス変数に格納しましたthis.current

正しいMenuItemsものが有効または無効になっていることを確認するためのより洗練された方法はありますか?使えるリスナーが欲しいのですが?

4

1 に答える 1

0

onPrepareMenu をオーバーロードすると、表示される直前に呼び出されます。

于 2011-03-14T09:47:20.363 に答える