位置: 编程技术 - 正文

android Menu详解 onCreateOptionsMenu()(android中menu)

编辑:rootadmin
Android的onCreateOptionsMenu()创建菜单Menu详解时间 -- :: ITeye-博客原文 1.选项菜单(optinosMenu) 2.上下文菜单(ContextMenu) 3.子菜单(subMenu) 其中最常用的就是选项菜单(optionsMenu), 该菜单在点击 menu 按键 后会在对应的Activity底部显示出来。 1.Activity菜单机制 (与dialog类&#;) Activity有一套机制来实现对菜单的管理,方法如下:

推荐整理分享android Menu详解 onCreateOptionsMenu()(android中menu),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android menu菜单怎么设置,android main,android menuitem,android menuitem,androidstudio中menu放在什么地方,android menu菜单怎么设置,android menuitem,android中menu,内容如对您有帮助,希望把文章链接给更多的朋友!

2. 添加菜单: 可以在onCreateOptionsMenu或者 onPrepareOptionsMenu方法中来添加菜单 2.1代码添加: menu.add((int groupId, int itemId, int order, charsequence title) .setIcon(drawable ID)

add()方法的四个参数,依次是:

android Menu详解 onCreateOptionsMenu()(android中menu)

1、组别,如果不分组的话就写Menu.NONE,

2、Id,这个很重要,Android根据这个Id来确定不同的菜单

3、顺序,哪个菜单项在前面由这个参数的大小决定

4、文本,菜单项的显示文本

add()方法返回的是MenuItem对象,调用其setIcon()方法,为相应MenuItem设置Icon 示例: public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); menu.add(Menu.NONE, Menu.First&#;1 , 0, "设置").setIcon(R.drawable.setting); return true; } 2.2布局文件添加: getMenuInflater().inflate(R.menu.options_menu, menu); 调用Activity的getMenuInflater()得到一个MenuInflater, 使用inflate方法来把布局文件中的定义的菜单 加载给 第二个参数所对应的menu对象 示例: @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); getMenuInflater().inflate( R.menu.options_menu , menu); return true; } 布局文件: 在res目录下建立一个menu文件夹,并创建布局文件: options_menu.xml <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android=" <item android:id=" @&#;id/menu_setting " android:title="设置" android:icon="@drawable/setting"></item> </menu> 3.菜单项监听: 只要菜单中的菜单项被点击,都会触发onOptionsItemSelected(MenuItem item) item参数即为被点击的菜单项,那么需要在此方法内判断哪个Item被点击了,从而实现不同的操作。 对于两种不同的添加菜单方法,判断的方法有一点区别,但本质是一样的。 3.1代码添加菜单的判断方法 @Override public boolean onOptionsItemSelected(MenuItem item) { super.onOptionsItemSelected(item); switch(item.getItemId()) //得到被点击的item的itemId { case Menu.First&#;1 : //对应的ID就是在add方法中所设定的Id break; case Menu.First&#;2 : break; } return true; } 3.2布局文件添加菜单的判断方法: @Override public boolean onOptionsItemSelected(MenuItem item) { super.onOptionsItemSelected(item); switch(item.getItemId()) //得到被点击的item的itemId { case R.id.menu_setting : //这里的Id就是布局文件中定义的Id,在用R.id.XXX的方法获取出来 break; case R.id.menu_info: break; } return true; }

Android多线程之handler 前言Android的消息传递机制是另外一种形式的事件处理,这种机制主要是为了解决Android应用中多线程的问题,在Android中不允许Activity新启动的线程访问该

android的动画之translate Android动画之translate(位移动画)上一篇文章讲了Android的左右滑动切换,实现过程是非常简单,一些新手可能会向深入了了解Activity切换的原理,下面主要

Android开发:SurfaceView基本用法总结及开发问题分享 本文主要讲解如何使用SurfaceView,并不涉及原理讲解,旨在帮助大家快速上手SurfaceView开发。如需了解原理,可以移步:(谷歌)SurfaceView原理详解或者:(

本文链接地址:https://www.jiuchutong.com/biancheng/384272.html 转载请保留说明!

上一篇:Android自定义View的用法总结(android自定义viewgroup绘制)

下一篇:Android多线程之handler(安卓多线程有几种实现方法)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络