6

我有一个片段要替换为另一个片段,同时还将事务添加到后台堆栈。我的两个片段都使用 ActionBarSherlock 向操作栏提供菜单项。但是,我遇到了一个问题——在我的第二个片段中,操作栏同时显示了第一个片段和第二个片段的项目;我只想要第二个的项目。有什么办法可以做到这一点?

(我也在使用支持库。)

4

2 回答 2

3

如果要更新操作栏图标,可以覆盖活动中的 onCreateOptionsMenu() 来定义哪个菜单用于活动片段。然后在替换片段后调用 invalidateOptionsMenu() 重新创建菜单。

如果您只使用下拉菜单,则可以覆盖 onPrepareOptionsMenu() 并从菜单中添加/删除项目。

于 2012-06-02T21:39:55.613 回答
0

您可能ViewPager在第一个片段中有 a 并getFragmentManager()传递给了FragmentPagerAdapter构造函数。然后您尝试使用相同的getFragmentManager().

如果是这样,则传递getChildFragmentManager()FragmentPagerAdapter.

于 2018-01-19T22:36:39.410 回答