Menu
# 1. OptionMenu
Menu的三个问题:
- 如何触发Menu的显示
- 如何向Menu中添加MenuItem
- 选择某个MenuItem时如何响应
【问题一】:OptionMenu在点击手机的menu键触发
# 向Menu中添加MenuItem
覆写onCreateOptionsMenu(Menu menu)
方法
显示OptionMenu的回调方法,在此方法中向Menu中添加Menultem添加MenuItem的两种方式:
1. 纯编码方式:menu.add()
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// 向Menu中添加MenuItem
// 1. 存编码 add(int groupId, int itemId, int order, CharSequence title);
menu.add(0,2,0,"添加");
menu.add(0,3,0,"删除");
return super.onCreateOptionsMenu(menu);
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
2. 加载menu文件的方式
在res目录下新建menu
文件夹,新建resource file
main_option.xml(Menu布局文件)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/add_item"
android:title="添加" />
<item
android:id="@+id/remove_item"
android:title="删除" />
</menu>
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
onCreateOptionsMenu(Menu menu)
方法
// 得到菜单加载器
Menulnflater menulnflater = getMenulnflater();
// 加载菜单文件
menulnflater.inflate(R.menu.main_option, menu); // 把加载对象填充到菜单文件
1
2
3
4
2
3
4
# 选择某个MenuItem时如何响应
onOptionsltemSelected(Menultem item)
当选择某个菜单项的回调方法
编辑 (opens new window)
上次更新: 2021/09/05, 15:01:20