Android 3.0 Honeycomb:如何在Action Bar中启用/禁用菜单项?

时间:2011-06-21 14:20:32

标签: menu android-3.0-honeycomb

在XML中禁用菜单项非常容易:

<item android:id="@+id/men_1" 
    android:title="@string/men_1" 
    android:showAsAction="ifRoom|withText"
    android:icon="@drawable/ic_menu_1"
    android:enabled="false"/>

通过&lt; 3.0 app:

上的代码更改它也很容易
@Override
public boolean onPrepareOptionsMenu(Menu menu)
{
  super.onPrepareOptionsMenu(menu);

  MenuItem item = menu.findItem(R.id.men_1);
  item.setEnabled(false);

  return true;
}

但是我如何在Android 3.x上执行此操作? 我想根据显示的片段禁用菜单选项。

亲切的问候, 水母

1 个答案:

答案 0 :(得分:24)

几乎相同但是将代码放入片段中,注意不同的方法签名。

@Override
public void onPrepareOptionsMenu(Menu menu) {
    MenuItem item= menu.findItem(R.id.men_1);
    item.setEnabled(false);
    super.onPrepareOptionsMenu(menu);
}

因此片段负责对菜单进行充气等。

修改请注意需要致电setHasOptionsMenu(true)