- 浏览: 599461 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (669)
- oracle (36)
- java (98)
- spring (48)
- UML (2)
- hibernate (10)
- tomcat (7)
- 高性能 (11)
- mysql (25)
- sql (19)
- web (42)
- 数据库设计 (4)
- Nio (6)
- Netty (8)
- Excel (3)
- File (4)
- AOP (1)
- Jetty (1)
- Log4J (4)
- 链表 (1)
- Spring Junit4 (3)
- Autowired Resource (0)
- Jackson (1)
- Javascript (58)
- Spring Cache (2)
- Spring - CXF (2)
- Spring Inject (2)
- 汉字拼音 (3)
- 代理模式 (3)
- Spring事务 (4)
- ActiveMQ (6)
- XML (3)
- Cglib (2)
- Activiti (15)
- 附件问题 (1)
- javaMail (1)
- Thread (19)
- 算法 (6)
- 正则表达式 (3)
- 国际化 (2)
- Json (3)
- EJB (3)
- Struts2 (1)
- Maven (7)
- Mybatis (7)
- Redis (8)
- DWR (1)
- Lucene (2)
- Linux (73)
- 杂谈 (2)
- CSS (13)
- Linux服务篇 (3)
- Kettle (9)
- android (81)
- protocol (2)
- EasyUI (6)
- nginx (2)
- zookeeper (6)
- Hadoop (41)
- cache (7)
- shiro (3)
- HBase (12)
- Hive (8)
- Spark (15)
- Scala (16)
- YARN (3)
- Kafka (5)
- Sqoop (2)
- Pig (3)
- Vue (6)
- sprint boot (19)
- dubbo (2)
- mongodb (2)
最新评论
在Android系统中,菜单可以分为三类:选项菜单(Option Menu),上下文菜单(Context Menu)以及子菜单(Sub Menu)。
一.选项菜单(Option Menu)
创建选项菜单的步骤:
1.覆盖Activity的onCreateOptionMenu(Menu menu)方法,当菜单第一次被打开时调用
2.调用Menu的add( )方法添加菜单项(MenuItem),同时可以调用MenuItem的setIcon( )方法来为菜单项设置图标
3.当菜单项(MenuItem)被选择时,覆盖Activity的onOptionsItemSelected(MenuItem item)来响应事件
选项菜单的实例:
效果图:
二.上下文菜单(Context Menu)
创建上下文菜单的步骤:
1.覆盖Activity的onCreateContextMenu(Menu menu)方法,调用Menu的add( )方法添加菜单项(MenuItem).
2.覆盖Activity的oonContextItemSelected(MenuItem item)来响应事件
3.调用registerForContextMenu( )方法来为视图注册上下文菜单
上下文菜单的实例(按住“测试Context Menu”2秒,就会出现上下文菜单):
效果图:
三.子菜单(Sub Menu)
创建子菜单的步骤:
1.覆盖Activity的onCreateOptionMenu(Menu menu)方法,调用Menu的addSubMenu( )方法来添加子菜单(Sub Menu)
2.调用SubMenu的add( )方法来添加子菜单(Sub Menu)
3.覆盖onContextItemSelect( )方法来响应菜单单击事件
子菜单的实例:
效果图:
注:menu.add的方法中的参数:
1.int类型的group ID参数,代表的是组概念,你可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。可以用到的方法有:
removeGroup(id)
setGroupCheckable(id, checkable, exclusive)
setGroupEnabled(id,boolean enabled)
setGroupVisible(id,visible)
2.int类型的item ID参数,代表的是项目编号。这个参数非常重要,一个item ID对应一个Menu中的选项。在后面使用菜单的时候,就是靠这个item ID来判断,你选中的是哪个选项。
3.int类型的order ID参数,代表的是菜单项的显示顺序。默认是0,表示菜单的显示顺序就是按照add的顺序来显示。
4.String类型的title参数,表示选项中显示的文字。
转自:http://liangruijun.blog.51cto.com/3061169/641275/
一.选项菜单(Option Menu)
创建选项菜单的步骤:
1.覆盖Activity的onCreateOptionMenu(Menu menu)方法,当菜单第一次被打开时调用
2.调用Menu的add( )方法添加菜单项(MenuItem),同时可以调用MenuItem的setIcon( )方法来为菜单项设置图标
3.当菜单项(MenuItem)被选择时,覆盖Activity的onOptionsItemSelected(MenuItem item)来响应事件
选项菜单的实例:
package com.android.menu.activity; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; public class OptionMenuActivity extends Activity { //声明菜单项常量 private static final int ITEM_1 = Menu.FIRST; private static final int ITEM_2 = Menu.FIRST+1; private static final int ITEM_3 = Menu.FIRST+2; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } //覆盖onCreateOptionsMenu(Menu menu)来添加菜单项 public boolean onCreateOptionsMenu(Menu menu) { //android.R使用的是系统自带的图标 menu.add(0, ITEM_1, 0, "开始").setIcon(android.R.drawable.ic_media_play); menu.add(0, ITEM_2, 0, "帮助").setIcon(android.R.drawable.ic_menu_help); menu.add(0, ITEM_3, 0, "退出").setIcon(android.R.drawable.ic_menu_close_clear_cancel); return true; } //覆盖onOptionsItemSelected(MenuItem item)来响应菜单选项被单击事件 public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case ITEM_1: setTitle("开始游戏!"); break; case ITEM_2: setTitle("查看帮助!"); break; case ITEM_3: setTitle("退出游戏!"); break; } return true; } }
效果图:
二.上下文菜单(Context Menu)
创建上下文菜单的步骤:
1.覆盖Activity的onCreateContextMenu(Menu menu)方法,调用Menu的add( )方法添加菜单项(MenuItem).
2.覆盖Activity的oonContextItemSelected(MenuItem item)来响应事件
3.调用registerForContextMenu( )方法来为视图注册上下文菜单
上下文菜单的实例(按住“测试Context Menu”2秒,就会出现上下文菜单):
package com.android.context.activity; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.view.ContextMenu; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ContextMenu.ContextMenuInfo; import android.widget.TextView; public class ContextMenuActivity extends Activity { private static final int ITME_1 = Menu.FIRST; private static final int ITME_2 = Menu.FIRST+1; private static final int ITME_3 = Menu.FIRST+2; private TextView text; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); text = (TextView)findViewById(R.id.TextView_1); //调用registerForContextMenu()来注册上下文菜单 registerForContextMenu(text); } @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { menu.add(0, ITME_1, 0, "红色背景"); menu.add(0, ITME_2, 0, "蓝色背景"); menu.add(0, ITME_3, 0, "白色背景"); } @Override public boolean onContextItemSelected(MenuItem item) { switch (item.getItemId()) { case ITME_1: //设置TextView的背景颜色 text.setBackgroundColor(Color.RED); break; case ITME_2: text.setBackgroundColor(Color.BLUE); break; case ITME_3: text.setBackgroundColor(Color.WHITE); break; } return true; } }
效果图:
三.子菜单(Sub Menu)
创建子菜单的步骤:
1.覆盖Activity的onCreateOptionMenu(Menu menu)方法,调用Menu的addSubMenu( )方法来添加子菜单(Sub Menu)
2.调用SubMenu的add( )方法来添加子菜单(Sub Menu)
3.覆盖onContextItemSelect( )方法来响应菜单单击事件
子菜单的实例:
package com.android.sub.activity; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.SubMenu; public class SubMenuActivity extends Activity { private static final int ITEM_1 = Menu.FIRST; private static final int ITEM_2 = Menu.FIRST+1; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } //覆盖onCreateOptionsMenu(Menu menu)方法,添加子菜单项 public boolean onCreateOptionsMenu(Menu menu) { SubMenu ad = menu.addSubMenu("添加").setIcon(android.R.drawable.ic_menu_add); SubMenu re = menu.addSubMenu("关闭").setIcon(android.R.drawable.ic_menu_close_clear_cancel); ad.add(0, ITEM_1, 0, "文件"); ad.add(0, ITEM_2, 0, "图片"); return true; } //覆盖onOptionsItemSelected(MenuItem item),响应菜单选项被单击事件 public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case ITEM_1: setTitle("添加文件!"); break; case ITEM_2: setTitle("添加图片!"); break; } return true; } }
效果图:
注:menu.add的方法中的参数:
1.int类型的group ID参数,代表的是组概念,你可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。可以用到的方法有:
removeGroup(id)
setGroupCheckable(id, checkable, exclusive)
setGroupEnabled(id,boolean enabled)
setGroupVisible(id,visible)
2.int类型的item ID参数,代表的是项目编号。这个参数非常重要,一个item ID对应一个Menu中的选项。在后面使用菜单的时候,就是靠这个item ID来判断,你选中的是哪个选项。
3.int类型的order ID参数,代表的是菜单项的显示顺序。默认是0,表示菜单的显示顺序就是按照add的顺序来显示。
4.String类型的title参数,表示选项中显示的文字。
转自:http://liangruijun.blog.51cto.com/3061169/641275/
发表评论
文章已被作者锁定,不允许评论。
-
android BaseActivity与BaseFragment的封装
2016-05-19 15:06 10371 概述 多模块Activity+多Fragment 是开发 ... -
android ScrollView常用属性
2016-05-09 09:17 728android:scrollbars 设置滚动条显示。none ... -
android RecyclerView使用及详解
2016-05-04 10:35 29231.前言 话说RecyclerView已经面市很久,也在很多 ... -
android DialogFragment 创建对话框(官方推荐)
2016-04-29 14:22 9261、 概述 DialogFragment在android 3. ... -
android Intent Flags及Task相关属性
2016-04-26 09:15 641task是一个具有栈结构的容器,可以放置多个Activity实 ... -
android SQLite具体实例应用详解(SQLiteOpenHelper)
2016-04-18 19:24 838上次我向大家介绍了SQLite的基本信息和使用过程,相信朋友们 ... -
android SQLite3常用命令&语法
2016-04-18 19:01 644sqlite数据库只用一个文件就ok,小巧方便,所以是一个非常 ... -
android View绘制相关问题总结
2016-03-28 19:27 7041.View的绘制流程分几步 ... -
android Handler Looper MessageQueue机制的原理
2016-03-22 21:09 788andriod提供了Handler和Looper来满足线程间的 ... -
android Bitmap,BitmapFactory类图像处理
2016-03-16 16:28 2391BitMap代表一张位图,扩展名可以是.bmp或者.dib。 ... -
android Sqlite数据库对象模型ORMLite框架学习
2016-03-11 15:24 729在Android项目中或多或少的都会使用数据库,为了提高我们的 ... -
android AsyncTask<参数,进度值类型,返回类型>学习
2016-03-10 14:45 1205AsyncTask和Handler对比 1 ... -
android 远程图片获取和本地缓存
2016-03-10 14:32 802概述 对于客户端——服 ... -
android onSaveInstanceState和onRestoreInstanceState学习
2016-03-10 10:08 825Android中的activity通过onSaveInst ... -
android Fragment生命周期和回退栈学习以及Fragment之间通信
2016-03-10 09:31 1554会涉及到Fragment如何产生,什么是Fragment,Fr ... -
android LruCache内存缓存学习(重写sizeOf方法)
2016-03-09 19:25 1089什么是缓存? 缓存技术原理就是把用户访问的所有对象看作一个全 ... -
android ListView中的convertView缓存及使用
2016-03-09 19:12 1736一、复用convertView 首先讲下ListView的原 ... -
android 从资源角度谈Android代码内存优化
2016-03-09 18:54 741开发人员如果在进行代码编写之前就有内存泄露方面的基础知识,那么 ... -
android startActivityForResult和setResult详情及Demo
2016-03-09 08:56 1072startActivityForResult与startAct ... -
android Toast详解以及自定义Toast例子
2016-01-28 14:15 1554Toast的用法 Toast只是一个View视图,快速的为用 ...
相关推荐
Android提供了多种菜单类型,包括选项菜单(Option Menu)、上下文菜单(Context Menu)和子菜单(Submenu)。选项菜单通常出现在屏幕顶部的三个点(汉堡菜单)中,而上下文菜单则在长按某项内容时显示。要创建这些...
首先,选项菜单(Option Menu)是最常见的菜单类型,通常位于屏幕的顶部或底部,作为应用的主要功能入口。用户可以通过点击屏幕右上角的三道横线(汉堡菜单)来打开它。创建选项菜单主要涉及在`res/menu`目录下定义...
菜单可以在不同的场景下使用,如选项菜单(Option Menu)、上下文菜单(Context Menu)或子菜单(Submenu)。在多级菜单中,子菜单是菜单项下的一个嵌套菜单,可以递归地创建多级结构。 1. **菜单创建**: - 在XML...
3. **弹出式菜单(Popup Menu)**:这类菜单可以在任何地方弹出,常用于需要临时显示多个操作选项的情况。通过`PopupMenu`类实例化并在需要的地方显示。 在描述中提到的“菜单结构就像是一个星球四周围绕着许多卫星...
Android菜单主要分为三种类型:选项菜单(Option Menu)、上下文菜单(Context Menu)和弹出式菜单(PopupMenu)。选项菜单通常在屏幕顶部显示,当用户点击菜单键或者在屏幕右上角的三个点时出现;上下文菜单则在...
1. 选项菜单(Option Menu):这是最常见的一类菜单,通常在屏幕的顶部或底部出现,通常在操作界面的三个点(汉堡菜单)中隐藏。选项菜单包含了一系列与当前屏幕相关的功能,如设置、返回等。用户可以通过点击汉堡...
在Android系统中,菜单通常出现在活动(Activity)的三个主要位置:选项菜单(Option Menu)、上下文菜单(Context Menu)和弹出式菜单(Popup Menu)。本篇文章将深入探讨`android menu`的相关知识,特别是如何创建...
Android允许自定义菜单的展开和收缩动画,通过`MenuItemCompat`类的一些方法可以实现。 通过`MenuDemo01`这个项目,开发者可以学习到如何设计和实现各种类型的菜单,以及如何根据应用需求灵活地调整菜单的行为。...
5.5 选项菜单、子菜单和快捷菜单Android 应用的菜单通常分为三种:选项菜单(Option Menu)、子菜单(Submenu)和快捷菜单(Context Menu)。选项菜单显示在屏幕顶部,一般在动作栏(Action Bar)中;子菜单在选项...