fhu*_*cho 61 android android-actionbar
我有一个带ActionBar的活动和标签导航.我正在使用拆分模式,因此选项卡位于顶部,操作位于底部栏中.如何动态更改底部操作?我需要这个,因为每个标签都有不同的动作.
ada*_*amp 128
由于操作由活动的选项菜单填充,您可以使用Activity#invalidateOptionsMenu()
.这将转储当前菜单并再次调用您的活动的onCreateOptionsMenu
/ onPrepareOptionsMenu
方法来重建它.
如果您使用操作栏选项卡更改片段配置,则有更好的方法.让每个片段管理自己的菜单部分.这些片段应该调用setHasOptionsMenu(true)
.当添加或删除具有选项菜单项的片段时,除了活动之外,系统将自动使选项菜单无效并调用每个片段的onCreateOptionsMenu
/ onPrepareOptionsMenu
方法.这样每个片段都可以管理自己的项目,您无需担心手动执行菜单切换.
小智 15
Activity.invalidateOptionsMenu()需要API级别11.有一个更简单的解决方案,它向后兼容:
最初将MenuItem添加到Menu,但将其可见性设置为false.使用MenuItem.setVisible()在需要时将可见性设置为true
归档时间: |
|
查看次数: |
52681 次 |
最近记录: |