Android--菜单--Menu
来源:互联网 发布:linux 拷贝vi 编辑:程序博客网 时间:2024/05/16 19:29
需求:
当点击右侧的Menu时在底部出现如图所示
当长按上面的选项菜单时会在中间也出现刚才那样的图片
先写点击Menu的情况
首先先看一下涉及的知识点
1 区分Menu与MenuItemmunu就是刚才那个添加删除那张图的框,而MenuItem就是框中的每一行(举例就是上面的添加行和删除行)2 Activity:OnCreateOptionsMenu(Menu menu)显示OptionMenu的回调方法,在此方法中向Menu中添加Menultem3 添加menuitem的两种方式:1)纯编码方式:menu.add(...)2)加载menu文件的方式:Menulnflater menulnflater = getMenulnflater();menumenulnflater.inflate(R.menu.main_option,menu);4 Activity:onOptionsItemSelected(Menulter item)当选择某个菜单项的回调方法注意:用第二种方式时需要首先创建一个xml文件
先用第一种方式
public boolean onCreateOptionsMenu(Menu menu) { // TODO Auto-generated method stub menu.add(0, 1,0, "增加"); menu.add(0, 2,0, "删除"); return super.onCreateOptionsMenu(menu); }
第二种方式
首先创建一个menu.xml
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/add" android:title="添加2"/> <item android:id="@+id/delete" android:title="删除2"/></menu>
接下来重要部分
public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu, menu); return super.onCreateOptionsMenu(menu); }
如果想让点击增加或删除有反应接下来需要调用回调方法
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.add: Toast.makeText(this, "增加", 0).show(); break; case R.id.delete: Toast.makeText(this, "删除", 0).show(); break; default: break; } return super.onOptionsItemSelected(item); }
上面这个是第二种方式的回调方法,如果想用第一种的回调方法,只需将上面case中的属性值改为上面第一种方法中的add(…)方法中的第二个参数所对应的值即可
ok,长按按钮出现的那种情况,请看下一篇
0 0
- Menu功能菜单 android
- Android 菜单Menu
- android menu菜单
- 菜单 Android Menu
- 菜单 Android Menu
- Android菜单(Menu)
- Android menu菜单小结
- android Menu菜单详解
- android menu菜单
- 菜单 Android Menu
- Android menu菜单详解
- Android Menu菜单
- Android Menu菜单
- Android Menu菜单
- Android 创建菜单Menu
- Android Menu功能菜单
- android 菜单 Menu
- android menu菜单
- POJ 1190 生日蛋糕
- 设fp已定义,执行语句fp=fopen("file","w");后,以下针对文本文件file操作叙述的选项错误的是:不可以在原有内容后追加写
- C#知识点总结
- 广播
- SLAM的前世今生 终于有人说清楚了
- Android--菜单--Menu
- 百练:简单的整数划分问题(经典dp)
- New Year and Days
- hdoj-4989-Summary
- QT中私有公有化(Q_DECLARE_PUBLIC Q_DECLARE_PRIVATE)原理小DEMO
- 客户端防表单重复提交和服务器端session防表单重复提交
- 下面的 SQL 命令中,可以将变量count值赋值为1的是
- APP接口开发过程中的注意事项
- 异常记录001—hibernate 4.2.4 Final 测试出现Connection cannot be null when 'hibernate.dialect' not set