【发布时间】:2017-03-31 03:04:16
【问题描述】:
我想要一个Activity 填充Fragments。每个 Fragment 在 Windows 操作系统中都表现为一个窗口 - 它的 Toolbar 带有标题和操作按钮:
片段:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Show Toolbar in Fragment
setHasOptionsMenu(true);
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_entries_list, container, false);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.menu_common, menu);
}
问题:
- 如何更改
Fragment的标题? - 如何显示三点动作按钮?
编辑:
我现在修改了menu_common.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_categories"
android:title="Categories"
android:visible="true"
app:showAsAction="never"/>
<item
android:id="@+id/action_settings"
android:title="Settings"/>
</menu>
片段
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
ViewGroup view = (ViewGroup) inflater.inflate(
R.layout.fragment_entries_list, container, false);
// Toolbar
Toolbar toolbar = (Toolbar) view.findViewById(R.id.tb_actions);
toolbar.setTitle("Bar");
toolbar.showOverflowMenu();
setHasOptionsMenu(true);
// Inflate the layout for this fragment
return view;
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.menu_common, menu);
}
编辑 2:
这就是我想要实现的目标:
【问题讨论】: