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

之前在一篇文章中已经讲过了菜单项的创建方法,但是那种方法效率较低,维护不易,现在实现另一种方法创建菜单。

MenuInflater,通过此类我们可以轻松的创建菜单项,具体步骤如下:

1、在res/menu/文件夹下,找到main.xml文件,此文件就是我们定义菜单项的地方,在些文件中添加如下菜单项:


代码如下:

<item
  android:id="@+id/menu1"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu1"/>
<item
  android:id="@+id/menu2"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu2"/>
<item
  android:id="@+id/menu3"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu3"/>
<item
  android:id="@+id/menu4"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu4"/>

2、在Activity中,覆写如下方法并添加一个显示系统设置界面的方法


代码如下:

@Override
 public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater inflater = getMenuInflater();
  inflater.inflate(R.menu.main, menu);
  return true;
 }
 @Override
 public boolean onOptionsItemSelected(MenuItem item) {
  switch (item.getItemId()) {
  case R.id.menu1:// 在些定义第一个菜单项的响应事件
   break;
  case R.id.menu2:
   break;
  case R.id.menu3:
   break;
  case R.id.menu4:
   showSettings();
   break;
  }
  return super.onOptionsItemSelected(item);
 }
 private void showSettings() {
  final Intent settingsIntent = new Intent(android.provider.Settings.ACTION_SETTINGS);
  settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
  startActivity(settingsIntent);
 }

3、运行程序,点击Menu,将出现如下效果

点击Menu4,将弹出系统设置页面!

(0)

相关推荐

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

    本文实例讲述了Android使用onCreateOptionsMenu()创建菜单Menu的方法.分享给大家供大家参考,具体如下: Android一共有三种形式的菜单: 1.选项菜单(optinosMenu) 2.上下文菜单(ContextMenu) 3.子菜单(subMenu) 其中最常用的就是选项菜单(optionsMenu), 该菜单在点击 menu 按键 后会在对应的Activity底部显示出来. 1.Activity菜单机制 (与dialog类似) Activity有一套机制来实现对菜

  • Android仿微信菜单(Menu)(使用C#和Java分别实现)

    本篇是对安卓菜单使用编程方式实现,当然可以使用XML的方式完成同样的功能,基本Java和C#写法都是一致的,所以使用XML的方式在本篇中使用Java演示,需要注意的是,对于如果不是VS开发的话,那么资源文件名称必须以小写开头,否则会报错. 运行效果 C#实现 using Android.App; using Android.OS; using Android.Views; using Android.Widget; namespace MenuDemo { [Activity(Label = "

  • 学习理解Android菜单Menu操作

    今天看了pro android 3中menu这一章,对Android的整个menu体系有了进一步的了解,故整理下笔记与大家分享. PS:强烈推荐<Pro Android 3>,是我至今为止看到的最好的一本android书,中文版出到<精通Android 2>. 理解Android的菜单 菜单是许多应用程序不可或缺的一部分,Android中更是如此,所有搭载Android系统的手机甚至都要有一个"Menu"键,由此可见菜单在Android程序中的特殊性.Andro

  • Android创建Menu菜单实例

    本文实例讲述了Android创建Menu菜单的方法.分享给大家供大家参考.具体方法如下: 复制代码 代码如下: package com.test; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.provider.Settings; import android.view.Menu; import android.view.MenuInflat

  • 详解Android中的Menu菜单键

    Android中的设置按钮:长按或点击菜单键 1.长按选项: 布局文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="m

  • Android UI实现SlidingMenu侧滑菜单效果

    本篇博客给大家分享一个效果比较好的侧滑菜单的Demo,实现点击左边菜单切换Fragment. 效果如下: 主Activity代码: package com.infzm.slidingmenu.demo; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.View; import android.view.View.OnClickListener; import android

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

    本文实例讲述了Android开发之菜单(menu)用法.分享给大家供大家参考,具体如下: Android手机专门用一个按键"menu"来显示菜单. 要实现菜单功能,首先要通过方法onCreateOptionMenu来创建菜单,创建方法有两种:一种是直接导入有menu的xml文件,一种是用类Menu的方法直接添加.创建好菜单后,用事件监听器onOptionItemSelected对能够触发的事件进行监听. 下面这个例子有两个Activity,分别有上面的两种方法实现menu,每个menu

  • Android动态添加menu菜单的简单方法

    从menu按键开始,涉及以下3个方法: 1.onCreateOptionsMenu(Menu menu)2.onPrepareOptionsMenu(Menu menu)3.onOptionsItemSelected(MenuItem item) 方法名 触发时间onCreateOptionsMenu 进入Launcher后第一次点MENU按钮时触发onPrepareOptionsMenu 有两种情况:1.进入Launcher后第一次点MENU按钮触发onCreateOptionsMenu后调用

  • Android学习教程之圆形Menu菜单制作方法(1)

    本文实例为大家分享了Android圆形菜单的使用方法,供大家参考,具体内容如下 MainActivity.java代码: package siso.handlerdemo; import android.app.NotificationManager; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.vi

  • Android开源组件SlidingMenu侧滑菜单使用介绍

    现在很多android应用都有侧滑菜单,效果很不错. GitHub上有SlidingMenu的开源库,使用起来很方便. SlidingMenu GitHub地址:https://github.com/jfeinstein10/SlidingMenu.GitHub上说,Sliding结合ActionBarSherlock使用功能可以更丰富,ActionBarSherlock GitHub地址:https://github.com/JakeWharton/ActionBarSherlock 附csd

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

    在Activity中覆写下面两个方法: 复制代码 代码如下: // 创建菜单 @Override public boolean onCreateOptionsMenu(Menu menu) {  menu.add(0, 0, 0, "关于");  // menu.add(int groupId, int itemId, int order, CharSequence title)  menu.add(0, 1, 1, "退出");        return sup

  • Android动态修改ToolBar的Menu菜单示例

    Android动态修改ToolBar的Menu菜单 效果图 实现 实现很简单,就是一个具有3个Action的Menu,在我们滑动到不同状态的时候,把对应的Action隐藏了. 开始上货 Menu Menu下添加3个Item <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xml

  • Android开发之menu菜单

    Android系统里面有四种类型的菜单:options menu(选项菜单),context menu(上下文菜单),sub menu(子菜单),Popup menu(弹出菜单). 首先说 选项菜单(OptionsMenu) 一.方法介绍: public booleanonCreateOptionsMenu(Menu menu):使用此方法调用OptionsMenu . public booleanonOptionsItemSelected(MenuItem item):选中菜单项后发生的动作.

随机推荐