我有一个片段要替换为另一个片段,同时还将事务添加到后台堆栈。我的两个片段都使用 ActionBarSherlock 向操作栏提供菜单项。但是,我遇到了一个问题——在我的第二个片段中,操作栏同时显示了第一个片段和第二个片段的项目;我只想要第二个的项目。有什么办法可以做到这一点?
(我也在使用支持库。)
我有一个片段要替换为另一个片段,同时还将事务添加到后台堆栈。我的两个片段都使用 ActionBarSherlock 向操作栏提供菜单项。但是,我遇到了一个问题——在我的第二个片段中,操作栏同时显示了第一个片段和第二个片段的项目;我只想要第二个的项目。有什么办法可以做到这一点?
(我也在使用支持库。)
如果要更新操作栏图标,可以覆盖活动中的 onCreateOptionsMenu() 来定义哪个菜单用于活动片段。然后在替换片段后调用 invalidateOptionsMenu() 重新创建菜单。
如果您只使用下拉菜单,则可以覆盖 onPrepareOptionsMenu() 并从菜单中添加/删除项目。
您可能ViewPager
在第一个片段中有 a 并getFragmentManager()
传递给了FragmentPagerAdapter
构造函数。然后您尝试使用相同的getFragmentManager()
.
如果是这样,则传递getChildFragmentManager()
给FragmentPagerAdapter
.