Android标题栏上添加多个Menu按钮的实例

Android标题栏上添加多个Menu按钮的实例

前言:

最近项目中碰到要在Android Menu旁边再添加一个按钮,而不是点击menu按钮然后在弹出一些选项.

MainActivity代码:

public class MainActivity extends Activity {
  private static final int MENU_CONFIRM = 17; 

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
  } 

  @SuppressLint("NewApi")
  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    //添加标题栏的确定按钮
    MenuItem item=menu.add(0,MENU_CONFIRM,0,R.string.operation_confirm); 

    /**
     * setShowAsAction参数说明  MenuItem接口的一些常量
     * SHOW_AS_ACTION_ALWAYS  总是显示这个项目作为一个操作栏按钮。
     * SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW  此产品的动作视图折叠成一个正常的菜单项。
     * SHOW_AS_ACTION_IF_ROOM  显示此项目作为一个操作栏的按钮,如果系统有空间。
     * SHOW_AS_ACTION_NEVER   从不显示该项目作为一个操作栏按钮。
     * SHOW_AS_ACTION_WITH_TEXT 当这个项目是在操作栏中,始终以一个文本标签显示它,即使它也有指定一个图标。
     */
    item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);//主要是这句话 

    item.setOnMenuItemClickListener(listener);//添加监听事件
    item.setIcon(R.drawable.ic_menu_confirm);//设置图标
    return true;
  } 

  OnMenuItemClickListener listener=new OnMenuItemClickListener() {
    @Override
    public boolean onMenuItemClick(MenuItem item) {
      switch (item.getItemId()) {
      case MENU_CONFIRM:
        Toast.makeText(MainActivity.this, "您点击了确定按钮", Toast.LENGTH_SHORT).show();
        break;
      default:
        break;
      }
      return false;
    }
  };
}

效果图如下:

如有疑问请留言或者到本站社区交流讨论,大家共同进步,本站关于Android开发的文章很多,希望大家搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

时间: 2017-09-13

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动态修改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菜单制作方法(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 中menu同时显示图标和文字的实现

Android 中menu同时显示图标和文字的实现 前言: Activity中的menu条目,在设置其showAsAction="never"时,默认只显示文字title,而不会显示图标icon,可以在Activity中重写onMenuOpened(),通过反射使其图标可见. 实现效果图: // 让菜单同时显示图标和文字 @Override public boolean onMenuOpened(int featureId, Menu menu) { if (menu != null)

Android编程实现自定义PopupMenu样式示例【显示图标与设置RadioButton图标】

本文实例讲述了Android编程实现自定义PopupMenu样式.分享给大家供大家参考,具体如下: PopupMenu是Android中一个十分轻量级的组件.与PopupWindow相比,PopupMenu的可自定义的能力较小,但使用更加方便. 先上效果图: 本例要实现的功能如下: 1.强制显示菜单项的图标. 默认状态下,PopupMenu的图标是不显示的,并且Android没有为我们开放任何API去设置它的显示状态.为了显示菜单项的图标,可以自己重写PopupMenu并修改相关属性,也可以直接

Android中PopupMenu组件的使用实例

最近学习研究了一下Android中PopupMenu组件的使用,发现很实用,所以留个笔记留作日后查询 估计很多人遇到过这种场景: 要求弹出的PopupWindow里面是一个列表,我们使用时都是在里面套个ListView或RecyclerView ,现在我们不需要在做这样繁琐的工作了. 在官方android.support.v7.widget 包下提供的 PopupMenu 组件,已经被越来越多的项目所采用.我们先看一下几个 app 的效果: 这是一个非常轻量化的上下文菜单组件,简洁.使用方便.

Android制作微信app顶部menu菜单(ActionBar)

使用微信APP的小伙伴对于微信的ActionBar一定有印象,今天就带领大家一起实现以下这个效果. 第一步打开我们的开发工具,这里我使用的是Eclipse+ADT插件,然后创建我们的工程,这里选择Android的最低版本号为3.0或以上. 然后开始我们的"抄袭",首先打开我们微信,我们看到,顶部标题部分,分为左右两部分,左侧为"微信"两字,右侧则为搜索按钮+更多按钮,点击搜索按钮,会出现一个文本输入框.点击更多按钮,则会出现隐藏的menu菜单,分为:添加好友.发起群

Android中menu使用详解

Menu(菜单)是Android中一定会使用的模块,每个Android项目都会用到Menu来给用户起到选择和导航的作用,提升用户体验,下面通过本文给大家分享android 中menu使用,需要的朋友一起看看吧 很多activity界面中都存在一个菜单栏,就是点击右上角的一个按钮的时候会出现一个下拉列表差不多的东西,这个功能的实现其实只需要下面的两步,每一个activity都可以拥有自己独一无二的menu,具体的格式可以自己进行定义,详细的创建步骤如下 ①在res下的menu中创建file_men

Android中Service服务详解(二)

本文详细分析了Android中Service服务.分享给大家供大家参考,具体如下: 在前面文章<Android中Service服务详解(一)>中,我们介绍了服务的启动和停止,是调用Context的startService和stopService方法.还有另外一种启动方式和停止方式,即绑定服务和解绑服务,这种方式使服务与启动服务的活动之间的关系更为紧密,可以在活动中告诉服务去做什么事情. 为了说明这种情况,做如下工作: 1.修改Service服务类MyService package com.ex

android中Context深入详解

以下分别通过Context认知角度,继承关系,对象创建等方面android中Context做了深入的解释,一起学习下. 1.Context认知. Context译为场景,一个应用程序可以认为是一个工作环境,在这个工作环境中可以存在许多场景,coding代码的场景 ,打电话的场景,开会的场景.这些场景可以类比不同的Activity,service. 2.从两个角度认识Context. 第一:Activity继承自Context,同时Activity还实现了其他的interface,我们可以这样看,

Android中Intent机制详解及示例总结(总结篇)

最近在进行android开发过程中,在将 Intent传递给调用的组件并完成组件的调用时遇到点困难,并且之前对Intent的学习也是一知半解,最近特意为此拿出一些时间,对Intent部分进行了系统的学习并进行了部分实践,下面将自己的学习及Intent知识进行了详细的归纳整理,希望能帮助到同样遇到相同问题的博友. 下面是Intent介绍.详解及Intent示例总结: 一.Intent介绍: Intent的中文意思是"意图,意向",在Android中提供了Intent机制来协助应用间的交互

Android中 service组件详解

service组件跟activity组件及其类似,可以说service是没有界面的activity, 当然service的生命周期和activity还是有一定的差别的. service组件一般用在什么地方的,上面讲了service组件没有界面,不用跟用户直接交互, 所以service组件一般运行在后台.比如做一些不需要界面的数据处理等等. 开发service需要两个步骤: 1,定义一个基础service的子类.     2,在AndroidManifest.xml 文件中配置该service.

Android中Service服务详解(一)

本文详细分析了Android中Service服务.分享给大家供大家参考,具体如下: 一.Service简介 Service是Android中实现程序后台运行的解决方案,适用于去执行那些不需要和用户交互而且还要求长期运行的任务.Service是android 系统中的四大组件之一(Activity.Service.BroadcastReceiver.ContentProvider),它跟Activity的级别差不多,但不能自己运行只能后台运行,并且可以和其他组件进行交互. Service并不是运行

Android中处理apple-touch-icon详解

苹果的Touch Icon相对我们都比较熟悉,是苹果为了支持网络应用(或者说网页)添加到桌面需要的图标,有了这些Touch Icon的网页链接更加和Native应用更相像了.由于苹果设备IPod,IPhone,IPad等设备广泛,很多网页都提供了touch icon这种图标资源.由于Android中并没有及早的有一份这样的标准,当我们想把网页添加到桌面时,仍然需要使用苹果的Touch Icon. Touch Icon 当我们想让一个网页比较完美地添加到桌面,通常情况下我们需要设置一个png图片文

Android中使用AspectJ详解

什么是AOP AOP是Aspect Oriented Programming的缩写,即『面向切面编程』.它和我们平时接触到的OOP都是编程的不同思想,OOP,即『面向对象编程』,它提倡的是将功能模块化,对象化,而AOP的思想,则不太一样,它提倡的是针对同一类问题的统一处理,当然,我们在实际编程过程中,不可能单纯的安装AOP或者OOP的思想来编程,很多时候,可能会混合多种编程思想,大家也不必要纠结该使用哪种思想,取百家之长,才是正道. 那么AOP这种编程思想有什么用呢,一般来说,主要用于不想侵入原

Android中Parcel用法详解

本文实例讲述了Android中Parcel用法.分享给大家供大家参考,具体如下: Android 中Parcel 的使用,他是一个存储基本数据类型和引用数据类型的容器,在andorid 中通过IBinder来绑定数据在进程间传递数据. Parcel parcel = Parcel.obtain();// 获取一个Parcel 对象 下面就可以对其进行方法进行操作了,createXXX(),wirteXXX(),readXXX(), 其中dataPosition(),返回当前Parcel 当前对象

Android中删除Preference详解

Android的设置界面实现比较简单,有时甚至只需要使用一个简单的xml文件即可.声明简单,但是如何从PreferenceScreen或者PreferenceCategory中删除一个Preference会简单么.为什么有些人写的就无法删除成功呢?本文将从Android源码实现来分析一下. 声明文件 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:a