android 按钮 菜单,(期末要考啊)Android的menu(菜单)按钮的使用

(期末要考啊)Android的menu(菜单)按钮的使用

安卓

Android的菜单按钮

使用xml的方式创建菜单项在res下的menu目录下新建一个main.xml文件,以menu为根节点,添加一个item就是菜单项

android:id="@+id/action_go"

android:orderInCategory="1"

android:title="前进"/>

android:id="@+id/action_back"

android:orderInCategory="2"

android:title="后退"/>

android:id="@+id/action_refresh"

android:orderInCategory="3"

android:title="刷新"/>

在Activity中复写onCreateOptionsMenu方法,将一个资源转换成menu对象

//初始化当前Activity的菜单项

@Override

public boolean onCreateOptionsMenu(Menu menu) {

//1.使用菜单填充器将一个菜单资源设置给menu对象

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

如果想要让菜单项有点击效果,需要复写Activity的onMenuItemSelected方法,然后去获取id,进行id的对比。

//要想对菜单项设置点击事件需要复写一个方法

@Override

public boolean onMenuItemSelected(int featureId, MenuItem item) {

//获取当前点击的菜单项的Id

switch (item.getItemId()) {

case R.menu.action_back​:

Toast.makeText(getApplicationContext(), "后退", 0).show();

break;

case R.menu.action_go:

Toast.makeText(getApplicationContext(), "前进", 0).show();

break;

case R.menu.refresh:

Toast.makeText(getApplicationContext(), "刷新", 0).show();

break;

}

return super.onMenuItemSelected(featureId, item);

}

使用代码的方式创建菜单使用代码的方式来添加菜单选项,就不用创建xml文件了,直接在onCreateOptionsMenu()方法中用menu.add()来添加菜单选项

//在Activity中复写onCreateOptionsMenu方法,代码添加一个menu的选项 groupid:item所在的分组

itemId:选项id

order : 顺序

title : 文本

menu.add(1, 0, 1, "示例");

@Override

public boolean onCreateOptionsMenu(Menu menu) {

/* //1.使用菜单填充器将一个菜单资源设置给menu对象

getMenuInflater().inflate(R.menu.main, menu);*/

//2.使用代码添加菜单项 groupId:分组Id itemId:菜单项的Id orderId:菜单顺序 title:文本

menu.add(0, 0, 1, "前进");

menu.add(0, 1, 2, "后退");

menu.add(0, 2, 3, "刷新1");

return true;

}

在点击菜单选项的时候我们应该改成,与add()方法添加的 itemId 所对应。

@Override

public boolean onMenuItemSelected(int featureId, MenuItem item) {

//获取当前点击的菜单项的Id

switch (item.getItemId()) {

case 1:

Toast.makeText(getApplicationContext(), "后退", 0).show();

break;

case 0:

Toast.makeText(getApplicationContext(), "前进", 0).show();

break;

case 2:

Toast.makeText(getApplicationContext(), "刷新", 0).show();

break;

}

return super.onMenuItemSelected(featureId, item);

}

屏蔽系统的菜单,弹出自己的dialog当menu按键点击时回调用onMenuOpend方法,会调用父类的防范返回一个true,可以直接返回false.不去调用系统的菜单

或者可以在该方法中定义自定义Dialog

/**当点击菜单按键时调用*/

@Override

public boolean onMenuOpened(int featureId, Menu menu) {

AlertDialog.Builder builder = new Builder(this);

builder.setTitle("aa");

builder.setMessage("bbb");

builder.show();

return false;

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/312120.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二维差分

给定原矩阵a[i,j],构造差分矩阵b[i,j],使得a[][]是b[][]的二维前缀和 核心操作: 给以(x1,y1)为左上角,(x2,y2)为右下角的子矩阵中的所有数a[i][j]全部都加上C b[x1,y1]C; b[x1,y21]-C; b[x21,y1]-C; b[x21,y21]C; 例题: 输入一个n行m列的整数矩阵&…

C#的未来:简化参数空值验证

乍一看,提案#2145 似乎是 C# 8 可空引用类型特性的逻辑扩展。其基本思想是,开发人员不需要再显式地向接受非空参数的方法添加参数空值检查。然而,人们对于这个特性的争议很大。本文试图说明这些选项以及它们的利弊,以便读者能够得…

android一键截图代码,偷偷告诉你ADB命令葵花宝典【一键截图和录屏】

先导预告作为一名测试工程师,每天可能都会面临从不同的设备导出截图或视频的工作,有些可能是bug截图或bug回放视频,有些截图可能是提供给PM或UI验收等等。 常规操作是iOS设备可以借助于iTools等工具导出;而安卓设备可能需要从设备…

10进制转换成其他进制-短除法

将10进制下的n转换成b进制下的数。 代码如下: char get(int x) {if (x<9) return x0;return x-10A; }string base(int n,int b) {string num;while(n) num get(n%b),n/b;reverse(num.begin(),num.end());return num; }例题&#xff1a; 回文数是指数字从前往后读和从后往…

【C# 调用 Go 语言】0x1 Hello Golang

C# 和 Golang 都不是世界上最好的语言。在不同的业务场景下&#xff0c;C# 和 Golang 各有所长。如果要编写一个网络程序&#xff0c;显然 Golang 更擅长&#xff0c;而如果要编写一个桌面 GUI 程序&#xff0c;那么 C# 简直不要太爽。我们完全可以将两者用在同一个项目中&…

android仿支付宝弹窗,【转】MUI自定义底部弹窗自带遮罩层仿支付宝支付弹窗

[Asm] 纯文本查看 复制代码html,body{height: 100%;}.fr-tc{/* 控制弹窗高度 */height: 40%;}.fr-div-w{border-radius: 10px 10px 0px 0px;background-color: #FFFFFF;height: 100%;padding: 15px;}.fr-btn{display: block;height: 40px;width: 60%;background-color: #14b5ff…

整数二分

整数二分步骤&#xff1a; 1.找一个区间[L,R],使答案一定在这个区间 2.找一个判断条件&#xff0c;使得该判断条件具有二段性(一般具有单调性)&#xff0c;并且答案一定是该二段性的分界点 3.分析终点M在该判断条件下是否成立&#xff0c;如果成立&#xff0c;考虑答案在哪个区…

解惑小微企业信息化系统上云的顾虑

小微企业到目前阶段&#xff0c;一点信息化系统没上的企业很少了&#xff0c;几乎找不到了。为了满足信息化系统异地办公的外网访问需要&#xff0c;在综合考虑硬件成本和运维成本&#xff0c;初期上云☁应该是最经济实惠的方案。信息化和数字化经济发展不仅给商业模式带来变革…

android 运行在ui县城,Android基础:在UI线程中运行代码

Android基础&#xff1a;在UI线程中运行代码从在UI线程中运行代码的角度来看&#xff0c;在以下方面有什么区别&#xff1a;MainActivity.this.runOnUiThread(new Runnable() {public void run() {Log.d("UI thread", "I am the UI thread");}});或MainAct…

区间合并

区间合并算法&#xff1a; 1.将所有区间按左端点从小到大排序 2.从左到右遍历每个区间 例题&#xff1a; 某校大门外长度为L的马路上有一排树&#xff0c;每两棵相邻的树之间的间隔都是1米。 我们可以把马路看成一个数轴&#xff0c;马路的一端在数轴0的位置&#xff0c;另一端…

云原生时代, 选择.NET Core

在容器、Kubernetes、DevOps&#xff0c;以及微服务等技术的推动下&#xff0c;2020年云原生势不可挡。 .NET Core 也非常契合 云原生对应用运行时的不同需求&#xff0c;.NET Core和kubernetes 同年诞生发展&#xff0c; 2018年kubernetes 已经奠定了在容器编排领域的王者地位…

pm1 android,Android Sensor SDK

Android Sensor SDKStep By Step1.新建工程Android Studio配置将sensoro-sensor-kit.jar包放入道libs文件夹下,然后在当前工程下的build.gradle文件配置项中的dependencies新增内容,&#xff0c;如下compile files(libs/sensoro-sensor-kit.jar)Eclipse配置将sensoro-sensor-ki…

哈希表应用举例

例题&#xff1a; 伊娃喜欢从整个宇宙中收集硬币。 有一天&#xff0c;她去了一家宇宙购物中心购物&#xff0c;结账时可以使用各种硬币付款。 但是&#xff0c;有一个特殊的付款要求&#xff1a;每张帐单&#xff0c;她只能使用恰好两个硬币来准确的支付消费金额。 给定她拥有…

WebApi管理和性能测试工具WebApiBenchmarks

说到WebApi管理和测试工具其实已经非常多的了&#xff0c;Postman、Swagger等在管理和维护上都非常出色&#xff1b;在性能测试方面也有不少的工具如:wrk,bombardier,http_load和ab等等。不过这些工具都具有单一性&#xff0c;管理和维护好的在性能测试上比较低效&#xff0c;对…

android中的shape资源,Android Drawable资源讲解之shape篇

运用好Android的drawable资源&#xff0c;在开发中就可以减少图片的使用量&#xff0c;这样既缩小了app的体积&#xff0c;也省去了设计图片的时间&#xff0c;而且也容易适配不同的屏幕尺寸。今天首先来讲讲shape资源的使用。1. Shape的属性介绍shape共支持四种形状&#xff0…

C++unique函数应用举例

明明想在学校中请一些同学一起做一项问卷调查。 为了实验的客观性&#xff0c;他先用计算机生成了N个1到1000之间的随机整数&#xff0c;对于其中重复的数字&#xff0c;只保留一个&#xff0c;把其余相同的数去掉&#xff0c;不同的数对应着不同的学生的学号。 然后再把这些数…

C# WPF 一个设计界面

微信公众号&#xff1a;Dotnet9&#xff0c;网站&#xff1a;Dotnet9&#xff0c;问题或建议&#xff1a;请网站留言&#xff0c; 如果对您有所帮助&#xff1a;欢迎赞赏。C# WPF 一个设计界面今天正月初三&#xff0c;大家在家呆着挺好&#xff0c;不要忘了自我充电。武汉人民…

android中shape的属性,android中shape的属性

solid&#xff1a;实心&#xff0c;就是填充的意思android:color指定填充的颜色gradient&#xff1a;渐变android:startColor和android:endColor分别为起始和结束颜色&#xff0c;ndroid:angle是渐变角度&#xff0c;必须为45的整数倍。另外渐变默认的模式为android:type”line…

C++to_string应用举例

给定一个非负整数 N&#xff0c;你的任务是计算 N 的所有数字的总和&#xff0c;并以英语输出总和的每个数字。 输入格式 共一行&#xff0c;包含一个整数 N。 输出格式 共一行&#xff0c;用英语输出总和的每个数字&#xff0c;单词之间用空格隔开。 代码如下&#xff1a; …

合集| 21 篇技术文章,带你从零入门 K8s

由阿里云与 CNCF 共同开发的《CNCF x Alibaba 云原生技术公开课》&#xff08;视频课程&#xff09;第一期已更新完毕。为了让大家有更好的学习体验&#xff0c;我们把视频课程转为图文&#xff0c;并请讲师重新编辑成文章&#xff0c;在公众号以“从零入门 K8s” 为系列进行每…