Android 选项菜单Options Menu

   一般的手机上都会有一个home键,单击后会显示出一系列的菜单,这个即是选项菜单(Options Menu),Options Menu开发主要涉及Menu,MenuItem,Submenu。

  1.一个Menu对象代表一个菜单,Menu对象可以添加MenuItem,也可以添加子菜单Submenu;

  2.MenuItem 对象代表一个菜单选项,通常MenuItem实例通过Menu.add()方法添加。

    menu.add(int group_id,int item_id,int order,CharSequence content);

  3.一个Submenu 实例代表一个子菜单。子菜单的添加是通过Menu.addSubmenu()方法实现。

 下面是简单的代码:

 1 //点击home键后开始触发,选择菜单
 2     @Override
 3     public boolean onCreateOptionsMenu(Menu menu) {
 4         //第一种方式,监听在另一个方法中
 5         menu.add(0,101,1,"开始");//参数:group_id,item_id,order,title;
 6         menu.add(0,102,1,"暂停");
 7         //第二种方式,添加后设置监听
 8         MenuItem item = menu.add(0,103,3,"关于");
 9         item.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
10             @Override
11             public boolean onMenuItemClick(MenuItem menuItem) {
12                 tvInfo.setText("关于");
13                 return false;
14             }
15         });
16 
17         //第三种方式,添加有子选项的
18         final SubMenu submenu = menu.addSubMenu(0, 104, 4, "退出");
19         submenu.add(1,1011,10,"确定");
20         submenu.add(1,1012,11,"取消");
21         submenu.setHeaderIcon(R.drawable.e);
22         return super.onCreateOptionsMenu(menu);
23     }
24     //home键操作
25     @Override
26     public boolean onOptionsItemSelected(MenuItem item) {
27         if(item.getItemId() == 101){
28             tvInfo.setText("开始");
29         }else if(item.getItemId() == 102){
30             tvInfo.setText("暂停");
31         }
32         return super.onOptionsItemSelected(item);
33     }
34 }

 

posted @ 2015-07-31 18:05  黄海-1991  阅读(368)  评论(0编辑  收藏  举报