一、重载onCreateOptionsMenu方法,创建菜单项
@Override public boolean onCreateOptionsMenu(Menu menu) { /* * 参数说明 * 1、组别,如果不分组的话就写Menu.NONE, * 2、Id,菜单唯一标示 * 3、菜单顺序 * 4、菜单显示文本 * * */ menu.add(Menu.NONE, Menu.FIRST + 1, 5, "菜单五").setIcon(android.R.drawable.ic_menu_delete);//setIcon()方法为菜单设置图标 menu.add(Menu.NONE, Menu.FIRST + 2, 2, "菜单二").setIcon(android.R.drawable.ic_menu_edit); menu.add(Menu.NONE, Menu.FIRST + 3, 6, "菜单六").setIcon(android.R.drawable.ic_menu_help); menu.add(Menu.NONE, Menu.FIRST + 4, 1, "菜单一").setIcon(android.R.drawable.ic_menu_add); menu.add(Menu.NONE, Menu.FIRST + 5, 4, "菜单四").setIcon(android.R.drawable.ic_menu_info_details); menu.add(Menu.NONE, Menu.FIRST + 6, 3, "菜单三").setIcon(android.R.drawable.ic_menu_send); return true; }
二、为菜单添加事件
@Override public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()) { case Menu.FIRST + 1: Toast.makeText(this, "删除菜单", Toast.LENGTH_LONG).show(); Intent intent = new Intent(); intent.setClass(OptionsMenuActivity.this, MainActivity.class); startActivity(intent); break; case Menu.FIRST + 2: ..................... return false; }
三、关闭菜单
@Override public void onOptionsMenuClosed(Menu menu) { Toast.makeText(this, "选项菜单关闭", Toast.LENGTH_LONG).show(); }
运行后,点击MENU按钮,出现如下效果: