Med*_*iha 20 android android-actionbar
是否可以在Android中禁用Action Bar中的按钮?我环顾四周,找不到任何代码片段,我当时认为应该有一些简单的方法.
Sla*_*ast 46
当您想要禁用操作栏时执行用户操作,请设置一些标志disableButtonFlag.
打电话invalidateOptionsMenu().这将触发onCreateOptionsMenu调用以重新生成菜单.
最后修改你的onCreateOptionsMenu,根据状态禁用你想要的按钮disableButtonFlag.
if (disableButtonFlag) {
menu.findItem(R.id.your_item).setEnabled(false);
} else {
menu.findItem(R.id.your_item).setEnabled(true);
}
Run Code Online (Sandbox Code Playgroud)
或者更简单:
menu.findItem(R.id.your_item).setEnabled(!disableButtonFlag);
Run Code Online (Sandbox Code Playgroud)禁用操作栏中的按钮的一种简单方法是将对菜单的引用保存在onCreateOptionsMenu():
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu, menu);
mMenu = menu; // Save reference
return super.onCreateOptionsMenu(menu);
}
Run Code Online (Sandbox Code Playgroud)
然后调用setEnabled()菜单项以启用或禁用:
mMenu.findItem(R.id.my_action_item).setEnabled(false);
Run Code Online (Sandbox Code Playgroud)
无需通过调用重新创建菜单invalidateOptionsMenu()。
| 归档时间: |
|
| 查看次数: |
22656 次 |
| 最近记录: |