📅  最后修改于: 2023-12-03 15:40:49.391000             🧑  作者: Mango
onCreateOptionsMenu
是一个用于创建选项菜单的回调方法。在Fragments中,我们可以使用onCreateOptionsMenu()
方法为每个Fragment创建一个选项菜单。在Fragment被添加到Activity中时,系统会回调Fragment的onCreateOptionsMenu()
方法,并在Activity的选项菜单中添加这个Fragment的选项菜单。
以下是一个常见的onCreateOptionsMenu
方法实现示例:
public class MyFragment extends Fragment {
// ...
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// Inflate the menu; this adds items to the action bar if it is present.
inflater.inflate(R.menu.my_menu, menu);
super.onCreateOptionsMenu(menu, inflater);
}
// ...
}
在上面的代码片段中,我们定义了一个MyFragment
类作为一个示例Fragment。在这个Fragment的onCreateOptionsMenu
方法中,我们首先调用inflater.inflate()
方法来从XML布局文件中加载菜单资源,并将菜单添加到上下文菜单中。然后,我们调用super.onCreateOptionsMenu()
来调用父类的创建菜单方法。
在我们的XML布局文件my_menu.xml
中,我们可以使用<menu>
元素来定义我们的选项菜单:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_item_1"
android:icon="@drawable/icon_1"
android:title="Menu Item 1" />
<item android:id="@+id/menu_item_2"
android:icon="@drawable/icon_2"
android:title="Menu Item 2" />
</menu>
在这个选项菜单中,我们定义了两个菜单项:Menu Item 1
和Menu Item 2
,它们分别使用icon_1
和icon_2
作为图标。我们可以在菜单项上附加点击监听器,以便在菜单项被选中时执行某些操作。
请注意,当选项菜单被创建时,我们的Fragment将添加到Activity的选项菜单中。因此,您可以通过Activity的选项菜单来访问所有Fragment的选项菜单。