Android_menu_SubMenu
menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- 嵌套菜单
1.在item中添加menu标签,menu标签中再添加item标签
2.二级菜单以对话框形式出现,最多两级菜单-->
<item
android:id="@+id/menu_1"
android:title="早餐"/>
<item
android:id="@+id/menu_2"
android:title="午餐"/>
<item
android:id="@+id/menu_3"
android:title="晚餐">
<menu>
<item
android:id="@+id/menu3_1"
android:title="鱼香肉丝"/>
<item
android:id="@+id/menu3_2"
android:title="香酥鸡块"/>
<item
android:id="@+id/menu3_3"
android:title="皮蛋瘦肉粥"/>
</menu>
</item>
</menu>
xml文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.menudemo.SubMenuDemo" > <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" /> </RelativeLayout>
源代码:
package com.example.menudemo; import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.widget.Toast; public class SubMenuDemo extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_submenu);
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
/**用xml文件加载菜单栏
* getMenuInflater().inflate(R.menu.sub_menu_demo, menu);
*/
/**通过代码的方式添加菜单
* 通过代码添加带有子菜单的菜单
*/
SubMenu file = menu.addSubMenu("文件");
file.add(1, 1, 1, "新建");
file.add(1, 2, 1, "打开");
file.add(1, 3, 1, "保存");
file.setHeaderIcon(R.drawable.ic_launcher);
file.setHeaderTitle("文件操作");
SubMenu edit = menu.addSubMenu("编辑");
edit.add(2,1,1,"复制");
edit.add(2,2,1,"粘贴");
edit.add(2,3,1,"剪切");
edit.setHeaderIcon(R.drawable.ic_launcher);
edit.setHeaderTitle("编辑操作");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
switch(item.getGroupId()){
case 1:{
if(item.getItemId()==1){
Toast.makeText(this,"点击了新建" , Toast.LENGTH_SHORT).show();
}else if(item.getItemId()==2){
Toast.makeText(this,"点击了打开" , Toast.LENGTH_SHORT).show();
}if(item.getItemId()==3){
Toast.makeText(this,"点击了保存" , Toast.LENGTH_SHORT).show();
}
break;
}case 2:
if(item.getItemId()==1){
Toast.makeText(this,"点击了复制" , Toast.LENGTH_SHORT).show();
}else if(item.getItemId()==2){
Toast.makeText(this,"点击了粘贴" , Toast.LENGTH_SHORT).show();
}if(item.getItemId()==3){
Toast.makeText(this,"点击了剪切" , Toast.LENGTH_SHORT).show();
}
}
return super.onOptionsItemSelected(item);
}
}
Android_menu_SubMenu的更多相关文章
随机推荐
- VC6.0的工程设置解读Project--Settings
[原文:http://wenku.baidu.com/view/f10a241dff00bed5b9f31ddd.html] 做开发差不多一年多了,突然感觉对VC的工程设置都不是很清楚,天天要和VC见 ...
- 《Data-Intensive Text Processing with mapReduce》读书笔记之一:前言
暑假闲得蛋痒,混混沌沌,开始看<Data-Intensive Text Processing with mapReduce>,尽管有诸多单词不懂,还好六级考多了,虽然至今未过:再加上自己当 ...
- HDFS的shell操作
bin/hadoop命令操作: namenode -format 格式化文件系统 fs(缩写:FileSystem) 运行一个文件系统的用户客户端 bin/hadoop fs常用命令操作: -ls h ...
- java中String类小结
构建一个字符串 1.用字符串直接量: String message = new String("Welcome to java"); 2.用字符串直接量: String messa ...
- P、NP及NPC问题
关于计算理论的一些概念 —判定问题和最优化问题 —归约 —多项式时间 —抽象问题 —形式语言体系 NPC证明 —一个问题转换为判定问题 —说明问题是NP —一个NPC问题规约到这个问题 —只需要规约到 ...
- 2-SAT模板
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAXCAYAAADgKtSgAAAFCUlEQVR42n2VeVCUdRzGf3n0T/80ld
- android微信分享遇到的问题
1.WXWebpageObject.description 长度不能超过1024 2.若回调返回BaseResp.ErrCode.ERR_AUTH_DENIED(用户拒绝),请检查AppID是否填写正 ...
- angular中的promise
angular中的promise用法 标签(空格分隔): angular 前言 Promise其实是一个规范,用类似then().then()这样的链式调用形式来处理因为异步带来意大利面条式的代码(多 ...
- React Native学习笔记-1:JSC profiler is not supported.(转载)
运行react-native中Example下的UIEXPLORER Project 遇到虾面报错: 2016-03-21 14:12:18.941 [trace][tid:com.facebook. ...
- 关于Windows文件名和路径名的那些事
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:关于Windows文件名和路径名的那些事.