android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(二)
来源:互联网 发布:企业数据库买什么品牌 编辑:程序博客网 时间:2024/04/29 10:51
放一些android中三种菜单的使用,包括最常见的菜单栏,还有上下文菜单ContextMenu,以及弹出式菜单PopupMenu的简单应用与对应方法参数详解。
-------------------------------------------------------
上下文菜单效果图:
代码如下:
@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {super.onCreateContextMenu(menu, v, menuInfo);getMenuInflater().inflate(R.menu.demo4,menu);}
重写这个方法,加载直接写的menu文件,这里用的是上一次普通菜单栏写好的。。
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_demo5);textView = (TextView) findViewById(R.id.text_view);registerForContextMenu(textView);}
然后再onCreate方法里为实现了这个上下文菜单的view注册registerForContextMenu()。
这样就可以实现上下文菜单的功能了,长按你所注册的view,这样子上下文菜单就会弹出来了。
接下来看一下如何处理上下文菜单事件,在activity中重写如下方法:
@Overridepublic boolean onContextItemSelected(MenuItem item) {String message = null ;switch (item.getItemId()) {case R.id.item_china:message = "中国";break;case R.id.item_japan:message = "日本";break;case R.id.item_america:message = "美国";break;case R.id.item_action_bar:message = "action bar";break;}Toast.makeText(this, message+"被点击了", Toast.LENGTH_LONG).show();return super.onContextItemSelected(item);}
效果图:
可以看到点击事件被响应了,而且弹出了二级菜单,二级菜单如何实现呢?和普通菜单的二级菜单一样,在XML文件中定义就行了。
<item android:id="@+id/item_china" android:orderInCategory="100" android:showAsAction="never" android:title="中国"> <menu> <item android:id="@+id/item_beijing" android:orderInCategory="200" android:showAsAction="never" android:title="北京"/> <item android:id="@+id/item_shanghai" android:orderInCategory="200" android:showAsAction="never" android:title="上海"/> </menu> </item>
-------------------------------------------------------
原创,我在这里说明一下,这里的例子都是非常简单的例子,更适合初学者,只有先学会用,才能研究更深层次的东西,初学者千万不要陷入诸如每个参数到底是什么意思,这里不这样,如果那样会怎么样,这是无穷无尽的问题,非常影响入门,只有用熟悉之后,才更容易的去纠结这些东西,所以我在这里不写这些东西了。只适合初学者看看的例子。。。 0 0
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(二)
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(一)
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(三)
- (4.1.1.3)Android 的上下文菜单: ContextMenu的使用方法以及与OptionMenu的区别
- android 使用上下文菜单ContextMenu
- android 使用上下文菜单ContextMenu
- Android使用上下文菜单ContextMenu
- Android菜单详解 使用上下文菜单ContextMenu
- 【Android】上下文菜单ContextMenu的使用
- 【Android】上下文菜单ContextMenu的使用
- 上下文菜单ContextMenu的使用
- Android菜单使用之ContextMenu(上下文菜单)
- Android--ContextMenu上下文菜单
- 【Android】上下文菜单contextMenu
- Android上下文菜单 ContextMenu
- Android-ContextMenu上下文菜单
- 【Android】上下文菜单contextMenu
- Android ContextMenu 上下文菜单
- android 开发技巧(6)--在 Canvas 上显示动画
- 透视投影变换推导(2)
- 机器学习入门1
- python写一个爬虫(2)
- ios开发——iOS9 3D Touch 使用教程
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(二)
- linux gcc 编译的so文件 运行时无法找到 错误:cannot open shared object file: No such file or directory
- 1045. Favorite Color Stripe (30)
- linux设备驱动归纳总结(五):2.操作硬件——IO内存
- QT的Graphics View框架与坐标系
- CodeForces 626 C. Block Towers(贪心)
- 37、微信通讯录联系人列表适配器ContactAdapter
- 不相关子查询
- U-BOOT源码分析及移植