zoukankan      html  css  js  c++  java
  • 菜单

      Android系统的菜单支持主要通过4个接口来实现

    • Menu接口只是一个父接口,该接口下有两个子接口。
    • SubMenu:它代表一个普通菜单。
    • ContextMenu:它代表一个子菜单。

    Menu接口定义了如下方法来添加菜单或菜单项。

    • MenuItem add(int titleRes):添加一个新的菜单项。
    • MenuItem add(int groupld,int itemId,int order,CharSequence title):添加一个新的处于groupId组的菜单项。
    • MenuItem add(CharSequence title)添加一个新的菜单项。
    • SubMenu addSubMenu(int titleRes)
    • SubMenu addSubMenu(int groupId,int itemId,int order,int titleRes):添加一个新的处于groupId组的子菜单。
    • SubMenu addSubMenu(CharSequence title):添加一个新的子菜单。
    • SubMenu addSubMenu(int groupId,int itemId,int order,CharSequencr title):添加一个新的处于groupI的组的子菜单。

    添加菜单或子菜单的步骤如下:

    1.重写Activity的onCreatOptionsMenu(Menu mens)的方法,在该方法里调用Menu对象的方法来添加菜单项或子菜单。

    2.如果希望应用程序能响应菜单项的单击事件,重写Activity的onOptionsItemSelected方法即可。

    示例:

    public class MainActivity extends Activity {
        final int GREEN=1;
        final int RED=2;
        final int BLUE=3;
        private TextView text;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            text=(TextView)findViewById(R.id.text);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.activity_main, menu);
            SubMenu colorMenu=menu.addSubMenu("字体颜色");
            colorMenu.setIcon(R.drawable.ic_action_search);
            colorMenu.setHeaderIcon(R.drawable.ic_action_search);
            colorMenu.setHeaderTitle("设置字体颜色");
            colorMenu.add(0,GREEN,0,"绿色");
            colorMenu.add(0,RED,0,"红色");
            colorMenu.add(0,BLUE,0,"蓝色");
            return super.onCreateOptionsMenu(menu);
        }
        public boolean onOptionsItemSelected(MenuItem mi){
            switch(mi.getItemId()){
            case GREEN:text.setTextColor(Color.GREEN);break;
            case RED:text.setTextColor(Color.RED);break;
            case BLUE:text.setTextColor(Color.BLUE);break;
            }
            return true;
            
        }
        
    }
  • 相关阅读:
    【BZOJ5306】染色(HAOI2018)-容斥原理+NTT
    【BZOJ3129】方程(SDOI2013)-容斥原理+扩展Lucas定理
    【BZOJ3876】支线剧情(AHOI&JSOI2014)-有上下界费用流
    【POJ1149】PIGS-最大流+优化建模
    【BZOJ1941】Hide and Seek(SDOI2010)-KD树
    【BZOJ1834】网络扩容(ZJOI2010)-最大流+费用流+拆边
    【BZOJ1927】星际竞速(SCOI2010)-费用流+拆点
    【BZOJ4872】分手是祝愿(六省联考2017)-期望DP
    【BZOJ2879】美食节(NOI2012)-费用流+拆点+动态加边
    JQ简单图片轮播
  • 原文地址:https://www.cnblogs.com/malinkang/p/2684911.html
Copyright © 2011-2022 走看看