B2片段:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.menu, menu);
}
问题是当菜单出现时,菜单会出现在A和C片段中。在片段A和C上我都是下一个:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(false);
}
行为是下一个。当我运行我的应用程序时,A和C片段显示选项菜单。当我去B时,如果我在B1并返回A或C,菜单会消失。如果我转到B2并返回A或C,则会显示菜单。我已经对它进行了重新填充,当我在B2片段中点击A或C片段后,片段A或C从B2片段调用onCreateOptionsMenu。任何帮助都会很棒!
答案 0 :(得分:0)
使用控制变量解决。我在主要活动中调用了onCreateOptionsMenu:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
if (posicionFragmento==1 && Listado_tiendas_mapas_fragment.seleccionFragmentoMenu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
}
return true;
}