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;
            
        }
        
    }
  • 相关阅读:
    记录------敬畏生活
    不错的博客分享
    Python学习笔记(一) 字符串和编码
    OSPF(二)基础实验 ASBR--- 在OSPF中引入自治系统外部路由--- LSA4和LSA5
    OSPF(一)基本概念和基础实验
    LAMP--PHP实验(四)使用包含文件提高代码效率
    LAMP--PHP实验(三)在页面之间传送变量 及遇到问题解决
    LAMP--PHP实验(二)常量和变量
    LAMP--PHP实验(一)第一个PHP程序
    随机获取图片的API
  • 原文地址:https://www.cnblogs.com/malinkang/p/2684911.html
Copyright © 2011-2022 走看看