选择菜单的 动 -- 静态建立

 选择菜单的 动 -- 静态建立
 -- 静态建立一个菜单
一、在res里右击建立一个名为menu文件夹
二、在建立好的res/menu里建立一个android XML file 文件
三、里面布局须要的菜单名称
代码示例:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/user_set"
        android:title="用户设置"/>
    <item
        android:id="@+id/user_exit"
        android:title="用户退出"/>
   
    <item android:id="@+id/colour_set" android:title="颜色设置">
        <menu>
            <group>
                <item
                    android:id="@+id/colour_red"
                    android:title="红色"/>
                <item
                    android:id="@+id/colour_blue"
                    android:title="蓝色"/>
                <item
                    android:id="@+id/colour_green"
                    android:title="绿色"/>
            </group>
        </menu>
    </item>
    
     <item android:id="@+id/font_set" android:title="字体大小">
        <menu>
            <group>
                <item
                    android:id="@+id/font_30"
                    android:title="30sp"/>
                <item
                    android:id="@+id/font_40"
                    android:title="40sp"/>
                <item
                    android:id="@+id/font_50"
                    android:title="50sp"/>
            </group>
        </menu>
    </item>
</menu>
-----------------
四、在MainActivity 里重写onCreateOptionsMenu方法来静态建立一个刚刚布局好的选择菜单
代码
@Override//静态菜单重写的方法
  public boolean onCreateOptionsMenu(Menu menu) {
//用getMenuInflater().inflate方法来获取菜单的布局 进行静态建立一个布局好的菜单
//参数1 -- menu文件夹里的静态布局好的菜单名字
//参数2 -- ?
   getMenuInflater().inflate(R.menu.men_activity, menu);
   return super.onCreateOptionsMenu(menu);
  }
------------------
五、而后想 点击选中的静态菜单触发一些 事件就要 重写一个监听方法
代码
@Override
  public boolean onMenuItemSelected(int featureId, MenuItem item) {
  return super.onMenuItemSelected(featureId, item);
  }
该方法里放一些要点击时作的事件
==========================================================
 -- 动态建立一个菜单
//不须要再res/menu/文件夹里布局一个菜单 -- 能够经过代码来建立
//动态建立一个菜单也须要重写onCreateOptionsMenu方法
代码
//动态菜单
 @Override
  public boolean onCreateOptionsMenu(Menu menu) {
//利用menu.add方法来动态建立须要的菜单名
//Menu.add(int groupId, int itemId, int order, CharSequence title)
//第一个参数 -- 没有能够用Menu.NONE
//第二个参数 -- 显示的顺序
//第三个参数 -- ?
//第四个参数 -- 要建立的菜单名字
   menu.add(Menu.NONE, 1, Menu.NONE, "菜单1");
   menu.add(Menu.NONE, 2, Menu.NONE, "菜单2");
   menu.add(Menu.NONE, 3, Menu.NONE, "菜单3");
   return super.onCreateOptionsMenu(menu);
  }
相关文章
相关标签/搜索