`
LoveZhou
  • 浏览: 272169 次
  • 性别: 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 按Menu弹出菜单

    在Android应用开发中,"按Menu弹出菜单"是一个常见的功能,它允许用户访问应用程序的主要操作选项。在Android系统中,Menu通常是通过按下设备屏幕右上角的菜单按钮或者长按Home键来触发的。这种九宫格样式的菜单设计...

    android Menu 菜单

    在`onCreateOptionsMenu()`方法中,可以使用`Menu.add()`系列方法创建菜单项。 ### 菜单分组 在`menu.xml`中,可以使用`group`元素对菜单项进行分组,这样可以方便地控制分组内的菜单项的显示顺序和可见性。 ### ...

    Android自定义menu的实现

    在Android开发中,Menu通常用于显示应用程序中的操作选项,如在顶部栏或下拉菜单中。自定义Menu允许开发者根据应用需求设计独特的交互方式和视觉样式。本篇将深入探讨如何在Android中实现自定义Menu。 首先,我们...

    Android代码-menu单选菜单.zip

    1. **创建菜单资源文件**: 在`res/menu`目录下创建XML文件,例如`main_menu.xml`。在这个文件中定义单选菜单项。每个`<item>`标签代表一个菜单项,可以使用`android:checkable="true"`和`android:groupID`属性来...

    Android_菜单(Menu)控件的使用.pdf

    Menu.add方法允许开发者在运行时创建菜单,这使得程序具有更高的灵活性,例如可以基于某些运行时条件动态生成菜单项。 在处理菜单项被选中的事件时,需要通过调用MenuItem.getItemId方法获取被点击菜单项的ID,然后...

    Android初级入门——菜单Menu的简单使用

    在本文中,我们将深入探讨Android初级入门时如何简单地使用菜单Menu。 首先,菜单在Android中的主要用途是为用户提供应用程序的主要操作选项,这些选项通常在屏幕的顶部或者在动作栏(Action Bar)中显示。菜单可以...

    android 使用菜单menu资源

    在Android应用开发中,`Menu`资源是一种非常重要的组件,它允许用户在应用程序的不同界面(如选项栏或上下文菜单)中访问各种操作。本文将深入讲解如何在Android项目中创建、使用和管理`Menu`资源,以实现一个易于...

    android 另类menu菜单提示

    综上所述,创建Android的另类Menu菜单不仅需要理解基本的菜单操作,还需要掌握自定义布局、动画、手势识别和数据绑定等技术。这样的菜单能为用户提供更加个性化和有趣的交互体验,同时也要保证其符合标准的用户界面...

    Android源码——menu单选菜单.zip

    1. 创建菜单资源 在res/menu目录下创建一个XML文件,例如`menu_single_choice.xml`,用于定义单选菜单项。示例代码如下: ```xml <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group ...

    Android 导航菜单 RibbonMenu

    总的来说,`RibbonMenu`是一个富有创意的Android导航菜单设计,它通过动态的展示方式和层次感的UI,提升了应用的交互性和视觉吸引力。实现这样的功能需要对Android的基础组件、动画系统以及触摸事件处理有深入理解,...

    Android menu 菜单实例

    - `onCreateOptionsMenu(Menu menu)`:首次创建菜单时调用,用于加载菜单资源到内存。 - `onPrepareOptionsMenu(Menu menu)`:每次菜单即将显示时调用,可用于根据当前状态动态更新菜单。 - `...

    Android menu单选菜单.rar

    在本教程中,我们将深入探讨如何在Android应用中创建和使用单选菜单(Radio Menus)。这份"Android menu单选菜单.rar"压缩包包含了一个具体的示例项目,供开发者参考学习。 首先,我们需要了解Android菜单的基本...

    Android path 菜单效果 Satellite Menu

    在Android开发中,创建独特且吸引用户的界面是至关重要的,其中菜单效果的创新设计能显著提升用户体验。"Android Path 菜单效果 Satellite Menu"是一个实现炫酷旋转菜单的项目,它利用Path2.0技术为用户提供了一种...

    Munu-of-Android-.rar_android_android menu_android 菜单

    创建菜单主要涉及以下几个步骤: - 在`res/menu`目录下创建XML文件,定义菜单项,例如`main_menu.xml`。 - 在对应的Activity中重写`onCreateOptionsMenu()`方法,加载XML菜单。 - 实现`onOptionsItemSelected...

    Android menu单选菜单.zip

    1. **创建菜单资源文件** - 在项目的`res/menu`目录下,创建一个XML文件(例如:`menu_radio.xml`),用于定义菜单项。每个`RadioButton`作为一个菜单项,通过`android:id`、`android:title`和`android:...

    Android UI之样式Menu

    本教程将深入探讨如何在Android中创建炫酷的弹出菜单,让你的应用脱颖而出。 首先,菜单(Menu)在Android中主要用于在屏幕顶部或浮动按钮上展示一组操作选项。它通常在三种上下文中使用:选项菜单(Option Menu)...

    android menu菜单使用

    本文将详细介绍如何在Android中创建和使用Menu菜单,尤其适合初学者。 首先,要使用Android菜单,我们需要在布局文件(如`activity_main.xml`)中不直接添加菜单元素,因为菜单通常在活动中动态生成。菜单的定义...

Global site tag (gtag.js) - Google Analytics