我有一个片段,其中包含我尝试在setHasOptionsMenu(true);
和onCreate()
中调用onCreateView()
的菜单,并将toolbar
设置为Actionbar
。我在这里已经完成了所有关于相同问题的问题,但似乎没有一个解决方案适合我!我尝试更改主题menu.clear(),并从活动的onCreateOptions()
返回true
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
setHasOptionsMenu(true);
// Inflating view layout
layout = inflater.inflate(R.layout.side_panel, container,false);
toolbar = layout.findViewById(R.id.toolbar);
((AppCompatActivity)getActivity()).setSupportActionBar(toolbar);
return layout;
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.menu_side_panel,menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
return super.onOptionsItemSelected(item);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
答案 0 :(得分:1)
如果您已在XML文件中声明了工具栏,请尝试此操作 首先使用findViewByid()获取对工具栏的引用,然后对菜单进行充气
mToolbar.inflateMenu(R.menu.main_menu);