Options menu选项菜单

创建选项菜单的核心步骤:
1.在res下新建menu文件夹,右键new一个Anderoid resource directory创建menu文件夹
2.menu文件夹下创建xml文件,右键NEW一个 Menu resource file文件
3.在问价夹下,写子条目

这里写图片描述

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/one"
        android:title="listView"
        app:showAsAction="never"></item>
    <item
        android:id="@+id/two"
        android:title="GridView"
        app:showAsAction="never"></item>
    <item
        android:id="@+id/three"
        android:title="瀑布流"
        app:showAsAction="never"></item>
</menu>
1) 重写Activity的onCreateOptionMenu(Menu menu)方法,当菜单第一次被加载时调用
(2)调用Menu 的add( )方法添加菜单项(MenuItem),同时可以调用MenuItem的setIcon()方法为菜单项设置图标(注:Android 3.0之后,即使添加了图标也不会显示)
(3)重写Activity的OptionsItemSelected(MenuItem item)来响应菜单项(MenuItem)的点击事件
来看一下具体的代码实现:

@Override  
   public boolean onCreateOptionsMenu(Menu menu) {  
       getMenuInflater().inflate(R.menu.item, menu);  
       return true;  
   }  
   @Override  
   public boolean onOptionsItemSelected(MenuItem item) {  
       int itemId = item.getItemId();  
       switch (itemId) {  
           case R.id.one:  
               //listView  
               re.setLayoutManager(new LinearLayoutManager(MainActivity.this));  
               break;  
           case R.id.two:  
               //gridview  
               re.setLayoutManager(new GridLayoutManager(MainActivity.this,2));  
               break;  
           case R.id.three:  
               //流失布局  
               re.setLayoutManager(new StaggeredGridLayoutManager(2,StaggeredGridLayoutManager.HORIZONTAL));  
               break;  
       }  
       return super.onOptionsItemSelected(item);  
   }  

5.如果想让MenuItem变成ActionBar的形式,可以修改res/menu/main.xml中的android:showAsAction属性,它的属性值一共有下面几种:

这里写图片描述
1.其中,ifRoom表示:如果有空间,就显示出来。withText表示:只显示文本(如果配了图标的话)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值