Ram*_*mky 2 android fragment menuitem
我正在开发一个应用程序,其中使用可滑动选项卡 - 使用 FragmentActivity 和每个选项卡各自的片段实现。
现在我在每个片段(选项卡)中都有复选框。当选中复选框时,我需要在应用程序的操作栏中启用几个菜单项(例如发送/共享/删除),并在取消选中复选框时禁用这些菜单。
我们怎样才能做到这一点?任何指示将不胜感激。
——拉姆基
小智 6
系统调用onCreateOptionsMenu()后,它会保留您填充的Menu的实例,并且不会再次调用onCreateOptionsMenu(),除非菜单由于某种原因失效。但是,您应该仅使用 onCreateOptionsMenu() 创建初始菜单状态,而不是在活动生命周期中进行更改。
如果要根据 Activity 生命周期中发生的事件修改选项菜单,可以在 onPrepareOptionsMenu() 方法中执行此操作。此方法将当前存在的 Menu 对象传递给您,以便您可以对其进行修改,例如添加、删除或禁用项目。(片段还提供 onPrepareOptionsMenu() 回调。)
参考文档
@Override
public boolean onPrepareOptionsMenu (Menu menu) {
if (condition_true)
menu.getItem(item_index).setEnabled(false);
return true;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10958 次 |
| 最近记录: |