我的活动包含Volley
和全屏片段。单击NavigationDrawer
中的各个项目会在活动中膨胀不同的片段。
我想在启动不同的片段时交换不同的工具栏。我想要这样做而不是膨胀一个新菜单的原因是我想要交换的工具栏有点复杂,并且有一些类似EditText的东西。
在膨胀片段之前还是在片段中,有没有办法在活动中做到这一点?
答案 0 :(得分:2)
只需在Fragment的布局中包含Fragment特定的工具栏,以便它永久显示在Fragment中。
现在使用片段的onStart()
方法 -
getActivity().getSupportActionBar().hide();
这将隐藏活动的默认工具栏,使其不与Fragment工具栏重叠。
然后再次使用片段的onStop()
方法 -
getActivity().getSupportActionBar().show();
这样,活动工具栏在Fragment外面再次可见。
答案 1 :(得分:0)
每次调用片段时使用“invalidateOptionsMenu”并使用片段ID,您可以在工具栏中设置菜单项的可见性...如果这是您需要的...希望有所帮助