【发布时间】:2015-11-13 00:00:02
【问题描述】:
我有一个包含 3 个片段的 Activity。在活动中有一个没有菜单项的工具栏。菜单项通过片段 onCreateOptionsmenu() 添加。
我的代码:
在片段中onCreate()
setHasOptionsMenu(true);
onCreateOptionsMenu()
menu.clear();
inflater.inflate(R.menu.menu_location_search, menu);
super.onCreateOptionsMenu(menu, inflater);
除了R.menu. 不同之外,所有 3 个片段都相同。因此,根据打开的 Fragment A、B 或 C,菜单会发生变化。
然而,工具栏只在我的 Activity 中被调用,它包含 3 个片段。
活动onCreate()
toolbar = (Toolbar) findViewById(R.id.app_bar);
setSupportActionBar(toolbar);
Activity 也有一个 NavigationDrawer。
NavigationDrawerFragment drawerFragment = (NavigationDrawerFragment)
manager.findFragmentById(R.id.fragment_navigation_drawer);
drawerFragment.setUp(R.id.fragment_navigation_drawer, (DrawerLayout) findViewById(R.id.drawer_layout), toolbar);
在 Activity XML 中,片段在工具栏下被调用。 说了这么多。是在Activity中调用Toolbar还是在每个Fragment中单独调用更好?
【问题讨论】:
标签: android android-fragments fragment toolbar android-optionsmenu