`
LoveZhou
  • 浏览: 270330 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android 创建菜单Menu

阅读更多
Android 创建菜单Menu
menu分三种:
Options menu 选项菜单
Context menu 上下文菜单
Submenu 子菜单

Options menu 是通过单击menu,显示出来的菜单,最多显示六个,多余的会自动生成expanded menu(list形式弹出),在菜单中以“more”标识;单击“more”时会弹出list菜单;

图一:



创建方式(代码):
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(0, MENU_NEW_GAME, 0, "New Game");
    menu.add(0, MENU_QUIT, 0, "Quit");
    return true;
}
其中menu.add(groupId, itemId, order, title)方法是向菜单中添加一个菜单项
groupId 是组id,可将多个菜单项分为一组,可以对一组进行整体控制
itemId 是添加的菜单项的id,用以标识该项,事件处理时会用到
order 控制菜单项的显示顺序,默认按添加的顺序进行显示
title 菜单项的标题,即当单击menu键时,显示出菜单,每项上的文字

该方法有返回值 MenuItem 类型,即得到添加的MenuItem,可以对该MenuItem进行特别的处理,比如:
调用setIcon 方法为其设置显示图标;

事件处理:
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case MENU_NEW_GAME:
        newGame();
        return true;
    case MENU_QUIT:
        quit();
        return true;
    }
    return false;
}
当选中菜单中的某一项时,会触发该方法,通过item.getItemId(),可以取得选中的项,根据需要,对每项编写事件处理即可

ContextMenu 是上下文菜单,功能类似于PC机中的鼠标右键功能,ContextMenu会注册给某一个View,当长按该View时会弹出 上下文菜单,是弹出列表形式

图二:


创建方式:
public void onCreateContextMenu(ContextMenu menu, View v,
                                ContextMenuInfo menuInfo) {
  super.onCreateContextMenu(menu, v, menuInfo);
  menu.add(0, EDIT_ID, 0, "Edit");
  menu.add(0, DELETE_ID, 0,  "Delete");
}

事件处理:
public boolean onContextItemSelected(MenuItem item) {
  AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
  switch (item.getItemId()) {
  case EDIT_ID:
    editNote(info.id);
    return true;
  case DELETE_ID:
    deleteNote(info.id);
    return true;
  default:
    return super.onContextItemSelected(item);
  }
}
创建与事件处理都与Options Menu 一样

Submenu 子菜单
子菜单可以被加到任意的其它菜单中,但不能被加到其它的子菜单中,通过Menu的addSubMenu()方法添加
创建方式
public boolean onCreateOptionsMenu(Menu menu) {
  boolean result = super.onCreateOptionsMenu(menu);
  SubMenu fileMenu = menu.addSubMenu("File");
  SubMenu editMenu = menu.addSubMenu("Edit");
  fileMenu.add("new");
  fileMenu.add("open");
  fileMenu.add("save");
  editMenu.add("undo");
  editMenu.add("redo");

  return result;
}
事件处理与Options Menu 一样
  • 大小: 7.6 KB
  • 大小: 22.1 KB
分享到:
评论

相关推荐

    Android创建Menu菜单实例

    主要介绍了Android创建Menu菜单实例,讲述了Android菜单项的创建方法,在Android应用程序开发中非常具有实用价值,需要的朋友可以参考下

    Android中使用Menu

    在Android活动中使用Menu,简单的程序。适应于初学者。 通过res中创建Menu文件,在Activity中通过onCreateOptionsMenu()方法和onOptionsItemSelected()方法实现菜单栏功能

    Android使用onCreateOptionsMenu()创建菜单Menu的方法详解

    主要介绍了Android使用onCreateOptionsMenu()创建菜单Menu的方法,结合实例形式较为详细的分析了Android基于onCreateOptionsMenu创建菜单的具体步骤与相关操作技巧,需要的朋友可以参考下

    android创建optionsmenu的方法

    主要介绍了android创建optionsmenu的方法,实例分析了Android菜单项的设置与创建技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    Android编程之菜单Menu的创建方法示例

    主要介绍了Android编程之菜单Menu的创建方法,结合实例形式分析了Android菜单Menu的布局、响应及功能实现技巧,需要的朋友可以参考下

    Android 为EditText文本框添加长按显示上下文菜单.rar

    Android ContextMenu实例,为EditText文本框添加上下文菜单,菜单激活并显示的方式是,用户在EditText输入框上面长按2秒,即可弹出上下文菜单,如运行截图所示的效果,为实现此功能,创建了onCreateContextMenu ...

    Sample_9_1.rar_android_android submenu_android 菜单_onCreateOption

    OnCreateOptionsMenu()和OnOptionsMenuSelected()是Activity中提供的两个回调方法,用于创建菜单项和响应菜单项的点击。onOptionsMenuClosed菜单关闭后发生的动作 onPrepareOptionsMenu选项菜单显示之前...

    Android菜单操作之创建并响应菜单

    上一篇《学习理解Android菜单Menu操作》简单介绍了一下Android的菜单,今天让我们看一下如何通过代码创建和响应最常用的选项菜单(options menu)。 一、创建options menu 之前提到,Android的activity已经为我们...

    Android开发之菜单(menu)用法实例分析

    要实现菜单功能,首先要通过方法onCreateOptionMenu来创建菜单,创建方法有两种:一种是直接导入有menu的xml文件,一种是用类Menu的方法直接添加。创建好菜单后,用事件监听器onOptionItemSelected对能够触发的事件...

    在Android中创建菜单项Menu以及获取手机分辨率的解决方法

    本篇文章小编为大家介绍,在Android中创建菜单项Menu以及获取手机分辨率的解决方法。需要的朋友参考下

    Android中menu使用详解

    Menu(菜单)是Android中一定会使用的模块,每个Android项目都会用到Menu来给用户起到选择和导航的作用,提升用户体验,下面通过本文给大家分享android 中menu使用,需要的朋友一起看看吧 很多activity界面中都存在...

    用Android MenuInflater创建菜单项的方法步骤

    之前在一篇文章中已经讲过了菜单项的创建方法,但是那种方法效率较低,维护不易,现在实现另一种方法创建菜单。 MenuInflater,通过此类我们可以轻松的创建菜单项,具体步骤如下: 1、在res/menu/文件夹下,找到main...

    Android中为activity创建菜单

    安卓中为activity创建菜单,供大家参考,具体内容如下 1.在res上面右键 > new > Android xml file . 2.在弹出对话框中,找到 resourse type 点开右边的下拉框 选为Menu, file中写上资源名字(随意) 3.之后将下面...

    Android学习笔记(十)——实现新闻列表

    【第一部分】历史文章: ...Android学习笔记(五)——Toast提示、Dialog对话框、Menu菜单 Android学习笔记(六)——自定义ListView布局+AsyncTask异步任务 Android学习笔记(七)——数据存储(共享参数Share

    记录Android开发学习

    记录Android开发学习Menu菜单学习创建菜单Menu创建主界面MainActivity设置点击事件发送数据接受数据 Menu菜单学习 1.掌握Android中菜单的创建。 2.掌握Intent信使组件。 创建菜单Menu 我们模仿微信菜单栏学习,创建...

    Android-NewPopupMenu-使用PopupWindow实现的Popup菜单.zip

    项目地址:https://github.com/u1aryz/Android-NewPopupMenu 效果图:如何使用创建菜单实例PopupMenuPopupMenu menu = new PopupMenu(this); menu.setHeaderTitle("这是title");//设置menu的标题2. 设置菜单...

Global site tag (gtag.js) - Google Analytics