【发布时间】:2016-04-06 19:49:22
【问题描述】:
我有一个片段尝试更改操作栏的标题。这一直有效,直到我将setHasOptionsMenu(true) 添加到片段中。
我该如何解决这个问题?因为我需要片段中的optionsmenu。
在片段中
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
((MainActivity)getActivity()).setActionBarTitle(getString(R.string.title_view_tree));
setHasOptionsMenu(true);
return inflater.inflate(R.layout.fragment_view_tree, container, false);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.menu_view_tree,menu);
super.onCreateOptionsMenu(menu,inflater);
}
在 MainActivity 中:
public void setActionBarTitle(String title) {
getSupportActionBar().setTitle(title);
}
当我使用// 禁用setHasOptionsMenu(true) 时,actionbar 的标题会正确更改。
【问题讨论】:
-
您是否尝试在操作栏中的标题之前设置 setHasOptionsMenu ?
-
@B378 检查我的答案,我已经测试过了,它可以按您的预期工作。如果您遇到任何问题,请告诉我。
标签: android android-fragments android-actionbar android-titlebar