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

jel*_*ish 9 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"/>
Run Code Online (Sandbox Code Playgroud)

通过<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;
}
Run Code Online (Sandbox Code Playgroud)

但是我如何在Android 3.x上做到这一点?我想根据显示的片段禁用菜单选项.

亲切的问候,水母

PJL*_*PJL 24

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

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

所以片段负责膨胀菜单等.

编辑注意需要打电话setHasOptionsMenu(true)