星空网 > 软件开发 > 操作系统

Menu创建菜单

       菜单是用户界面中最常见的元素之一,使用非常频繁,在Android中,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu),今天这讲是OptionsMenu 

  一、概述:这里偷懒,从网上引用的,非原创。引用出处:ForrestWoo

  public boolean onCreateOptionsMenu(Menu menu):使用此方法调用OptionsMenu 。

  public boolean onOptionsItemSelected(MenuItem item):选中菜单项后发生的动作。

  public void onOptionsMenuClosed(Menu menu):菜单关闭后发生的动作。

  public boolean onPrepareOptionsMenu(Menu menu):选项菜单显示之前onPrepareOptionsMenu方**被调用,你可以用此方法来根据打当时的情况调整菜单。

  public boolean onMenuOpened(int featureId, Menu menu):单打开后发生的动作。

     首先我们先创建一个menu文件,这里用的是android studio,创建方式如下:

      1.Menu创建菜单images/loading.gif' data-original="http://images2015.cnblogs.com/blog/37758/201611/37758-20161107233825280-983696166.jpg" >

      2.Menu创建菜单

      3.创建完成后,在muen.

              

1 <??>2 <menu ="http://schemas.android.com/apk/res/android">3        <item android:id="@+id/add_item"4          android:title="添加一个menu"/>5 6        <item android:id="@+id/move_item"7          android:title="移除一个menu"8          />9 </menu>

      在Studio中是这样显示的:

       Menu创建菜单

        4.接下来我们重写OnCrateOptionsMenu()方法:代码如下

          

Menu创建菜单Menu创建菜单
1 /*@ onCreateOptionsMenu2 * */3   public boolean onCreateOptionsMenu(Menu menu) {4     getMenuInflater().inflate(R.menu.menu, menu);5     return true  ;6   }

View Code

        *通过getMenuInflater()方法得到对像,再调用inflate()来创建活动菜单,光有菜单是不够的,我们要让它显示出来:添加以下代码:

 

Menu创建菜单Menu创建菜单
 1 public boolean onOptionsItemSelected(MenuItem item) 2       { 3        switch (item.getItemId()) 4         { 5          case R.id.add_item: //在menu文件中定义的ID 6            Toast.makeText(this,"弹出一个menu",Toast.LENGTH_SHORT).show(); 7               break; 8          case R.id.move_item://同上 9            Toast.makeText(this,"关闭一个menu",Toast.LENGTH_SHORT).show();10          default:11 12            break;13         }14        return true;15      }

onOptionsItemSelected

重写onOptionsItemSelected方法,通过调用getItemId()方法来判断点击的是哪一个菜单。效果如下:

Menu创建菜单Menu创建菜单Menu创建菜单

 

 

 




原标题:Menu创建菜单

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

美国站如何注册?2018年亚马逊美国站注册新变化及流程揭秘!:https://www.ikjzd.com/articles/1660
跨境电商圈这个大公司破产?员工齐讨薪用户怒起维权:https://www.ikjzd.com/articles/16601
2019年情人节邮件营销“套路”,拿走拿走别客气~:https://www.ikjzd.com/articles/16603
沃尔玛上线新服务!6月5日之前免费!:https://www.ikjzd.com/articles/1660449927907799042
跨境ChatGPT,永久免费使用!抓紧注册!:https://www.ikjzd.com/articles/1660461974951325697
跨境电商财务如何做账?从五个方面探讨,管控财务风险和提高效率:https://www.ikjzd.com/articles/1660485786782691329
无锡旅游景点竹海 - 无锡的竹海:https://www.vstour.cn/a/363178.html
5月贾汪好玩的地方 贾汪哪有好玩的地方:https://www.vstour.cn/a/363179.html
相关文章
我的浏览记录
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流