Android_转载_creating menus_创建Menus
来源:互联网 发布:临沂软件开发公司 编辑:程序博客网 时间:2024/05/21 15:47
Creating Menus
android 菜单包括三种.Options Menu , Context Menu 和Submenu.
- 1.Options Menu(选项菜单)
01.@Override 02. public boolean onOptionsItemSelected(MenuItem item) { 03. // TODO Auto-generated method stub 04. switch(item.getItemId()) { 05. case 1://id可以是用menu.add方法生成的数字,也可是用xml文件生成的R.id.XX 06. System.out.println("new clicked"); 07. return true; 08. 09. } 10. return super.onOptionsItemSelected(item); 11. } 12. @Override 13. public boolean onCreateOptionsMenu(Menu menu) { 14. // TODO Auto-generated method stub 15. menu.add(0, 1, 1, "new"); 16. menu.add(0, 2, 2, "open"); 17. menu.add(0, 3, 3, "close"); 18. menu.add(0, 4, 4, "start"); 19. menu.add(0, 5, 5, "about"); 20. menu.add(0, 6, 6, "restart"); 21. menu.add(0, 7, 7, "reopen"); 22. SubMenu sub = menu.addSubMenu(0, 2, 2, "含子菜单"); 23. Resources res = getBaseContext().getResources(); 24. sub.setIcon(res.getDrawable(R.drawable.icon)); 25. sub.setHeaderIcon(res.getDrawable(R.drawable.icon)); 26. sub.add(1, 3, 0, "Menu A1"); 27. sub.add(1, 4, 1, "Menu A2"); 28. return super.onCreateOptionsMenu
01.<?xml version="1.0" encoding="utf-8"?> 02.<menu xmlns:android="http://schemas.android.com/apk/res/android"> 03. <item android:id="@+id/new_game" 04. android:icon="@drawable/ic_new_game" 05. android:title="@string/new_game" /> 06. <item android:id="@+id/quit" 07. android:icon="@drawable/ic_quit" 08. android:title="@string/quit" /> 09.</menu>
并在java文件中.调用如下方法
01.@Override 02.public boolean onCreateOptionsMenu(Menu menu) { 03. MenuInflater inflater = getMenuInflater(); 04. inflater.inflate(R.menu.game_menu, menu); 05. return true; 06.}
2.Context Menu(上下文菜单,类似windows下的右键菜单)
- 一般,contextMenu多用于ListView 视图中,当用户持续按住一个listItem的时候.就可以弹出ContextMenu来.并执行需要的功能.
- 可用如下代码生成contextMenu:
- 并需要调用
registerForContextMenu()对contextMenu进行注册;
01.@Override 02. public void onCreateContextMenu(ContextMenu menu, View v, 03. ContextMenuInfo menuInfo) { 04. // TODO Auto-generated method stub 05. menu.setHeaderTitle("ContextMenu"); 06. menu.add(0, 0, 0, "contextMenuItem 0"); 07. menu.add(0, 1, 0, "contextMenuItem 1"); 08. super.onCreateContextMenu(menu, v, menuInfo); 09. } 10. //长按菜单响应函数 11. @Override 12. public boolean onContextItemSelected(MenuItem item) { 13. setTitle("contextMenuItem"+item.getItemId()+"Clicked"); 14. return super.onContextItemSelected(item); 15. }
我在网上发现另一种不用调用 registerForContextMenu()的方法代码如下:
01.list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() { 02. 03. @Override 04. public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { 05. menu.setHeaderTitle("ContextMenu"); 06. menu.add(0, 0, 0, "contextMenuItem0"); 07. menu.add(0, 1, 0, "contextMenuItem1"); 08. } 09. });
3.Submenu(子菜单,类似windows下,右键菜单中,黑色三角形指向的菜单)
01.@Override 02.public boolean onCreateOptionsMenu(Menu menu) { 03. // TODO Auto-generated method stub 04. 05. SubMenu sub = menu.addSubMenu(0, 2, 2, "含子菜单"); 06. Resources res = getBaseContext().getResources(); 07. sub.setIcon(res.getDrawable(R.drawable.icon)); 08. sub.setHeaderIcon(res.getDrawable(R.drawable.icon)); 09. sub.add(1, 3, 0, "Menu A1"); 10. sub.add(1, 4, 1, "Menu A2"); 11. return super.onCreateOptionsMenu(menu); 12.}
本文完整代码 CSDN下载频道 :http://download.csdn.net/source/2900952 ,
本文章转载自http://blog.csdn.net/Jason69181/article/details/6069673
- Android_转载_creating menus_创建Menus
- Android_文档学习_UI_creating menus
- 转载_Creating Software Products for the Mac Platform
- Menus
- menus
- Creating Contextual Menus创建上下文菜单
- Android_如何创建桌面快捷方式
- (转)3.2 创建菜单和工具栏(Creating Menus and Toolbars)
- 自己创建Menu对象,在onCreateOptionsMenu()之外inflate menus.xml
- Android_创建拥有自己adapter的Alertdialog
- Android_创建和删除快捷图标
- android_菜单的创建_xUtils框架使用
- 从头学android_创建xml文件
- android_项目的简单创建和生成
- Context Menus
- Create menus
- Android Menus
- Android Menus
- 推荐销售必学——高效寻找客户的渠道和方法
- accesslog或者cookie'log的shell常用分析脚本
- http 错误代码表
- multiple definition of
- 读书笔记(一)
- Android_转载_creating menus_创建Menus
- windows下boost怎样安装与使用说明?
- 361. Respect yourself, or no one will respect you. 要人尊重,必须自重
- Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息
- 张硕总结推荐——拜访客户决不能犯的错误
- Ubuntu停止支持版本的源列表
- 详解JSP
- SQLServer 系统视图 (部分)
- JS字符串操作方法