首页 > 代码库 > Android标题栏上添加多个Menu按钮

Android标题栏上添加多个Menu按钮

最近项目中碰到要在Android Menu旁边再添加一个按钮,而不是点击menu按钮然后在弹出一些选项.

 

MainActivity代码:

 

  1. public class MainActivity extends Activity {  
  2.     private static final int MENU_CONFIRM = 17;  
  3.   
  4.     @Override  
  5.     protected void onCreate(Bundle savedInstanceState) {  
  6.         super.onCreate(savedInstanceState);  
  7.         setContentView(R.layout.activity_main);  
  8.     }  
  9.   
  10.     @SuppressLint("NewApi")  
  11.     @Override  
  12.     public boolean onCreateOptionsMenu(Menu menu) {  
  13.         // Inflate the menu; this adds items to the action bar if it is present.  
  14.         getMenuInflater().inflate(R.menu.main, menu);  
  15.         //添加标题栏的确定按钮  
  16.         MenuItem item=menu.add(0,MENU_CONFIRM,0,R.string.operation_confirm);  
  17.           
  18.         /** 
  19.          * setShowAsAction参数说明   MenuItem接口的一些常量 
  20.          * SHOW_AS_ACTION_ALWAYS   总是显示这个项目作为一个操作栏按钮。 
  21.          * SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW   此产品的动作视图折叠成一个正常的菜单项。  
  22.          * SHOW_AS_ACTION_IF_ROOM   显示此项目作为一个操作栏的按钮,如果系统有空间。  
  23.          * SHOW_AS_ACTION_NEVER     从不显示该项目作为一个操作栏按钮。 
  24.          * SHOW_AS_ACTION_WITH_TEXT  当这个项目是在操作栏中,始终以一个文本标签显示它,即使它也有指定一个图标。 
  25.          */  
  26.         item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);//主要是这句话  
  27.           
  28.         item.setOnMenuItemClickListener(listener);//添加监听事件  
  29.         item.setIcon(R.drawable.ic_menu_confirm);//设置图标  
  30.         return true;  
  31.     }  
  32.       
  33.     OnMenuItemClickListener listener=new OnMenuItemClickListener() {  
  34.         @Override  
  35.         public boolean onMenuItemClick(MenuItem item) {  
  36.             switch (item.getItemId()) {  
  37.             case MENU_CONFIRM:  
  38.                 Toast.makeText(MainActivity.this, "您点击了确定按钮", Toast.LENGTH_SHORT).show();  
  39.                 break;  
  40.             default:  
  41.                 break;  
  42.             }  
  43.             return false;  
  44.         }  
  45.     };  
  46. }  

 



效果图如下:

技术分享

Android标题栏上添加多个Menu按钮