菜单分三种:
1、Optionsmenu选项菜单
2、Contextmenu上下文菜单
3、SubMenu子菜单
Optionsmenu选项菜单:
1、先要创建选项菜单:onCreateOptionsMenu(Menu menu)activity中;
-可动态添加设置menu.add();
onCreateOptionsMenu(Menu menu){
menu.add(groupId, itemId, order, title)
}
groupId:分组的id
itemId:菜单项的id
order:排序号
title:菜单名
-xml设置Inflater.inflater();
设置菜单点击事件:onOptionsItemSelected();
1、Optionsmenu选项菜单
2、Contextmenu上下文菜单
3、SubMenu子菜单
Optionsmenu选项菜单:
1、先要创建选项菜单:onCreateOptionsMenu(Menu menu)activity中;
-可动态添加设置menu.add();
onCreateOptionsMenu(Menu menu){
menu.add(groupId, itemId, order, title)
}
groupId:分组的id
itemId:菜单项的id
order:排序号
title:菜单名
-xml设置Inflater.inflater();
getMenuInflater().inflate(R.menu.main, menu);
加载菜单代码:
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
// getMenuInflater().inflate(R.menu.main, menu);
MenuItem item = menu.add(1, 100, 1, "菜单一");
item.setTitle("aaa");
item.setIcon(R.drawable.ic_launcher);// api>=11 不显示图标 ,
menu.add(1, 102, 1, "菜单三");
return true;//false让方法不执行
}
动态加载菜单的xml文件:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_menu_item1"
android:orderInCategory="100"
android:showAsAction="never"
android:title="菜单一"/>
<item
android:id="@+id/action_menu_item2"
android:orderInCategory="100"
android:showAsAction="never"
android:title="菜单二"/>
</menu>
设置菜单点击事件:onOptionsItemSelected();
onOptionsItemSelected(MenuItem item)--菜单点击监
item.getItemId()--获取被点击的菜单id
监听事件代码:
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case 102:
Toast.makeText(MainActivity.this, "点击了菜单三", Toast.LENGTH_SHORT)
.show();
break;
}
return super.onOptionsItemSelected(item);
}