android提供了三种菜单,选项菜单、子菜单、上下文菜单。下面简单介绍这三种菜单的使用。

java代码:

import com.lovo.R;import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.util.Log;import android.view.ContextMenu;import android.view.Menu;import android.view.MenuItem;import android.view.SubMenu;import android.view.View;import android.view.ContextMenu.ContextMenuInfo;import android.widget.Button;import android.widget.LinearLayout;public class MenuActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);//得到当前MenuActivity的布局LinearLayout layout = (LinearLayout) findViewById(R.id.layout);//上下文菜单菜单在当前屏幕注册,只有注册才能生效registerForContextMenu(layout);}/** * 创建子菜单和选项菜单 */@Overridepublic boolean onCreateOptionsMenu(Menu menu) {SubMenu file_menu = menu.addSubMenu("文件");//创建子菜单file_menu.add(1, 11, 1, "新建");file_menu.add(1, 12, 2, "保存");file_menu.add(1, 13, 3, "另存为");// 设置菜单为单选,第一个参数为组ID,第二个参数true表示可以勾选,第三个参数true表示可以单选,false表示可以多选  SubMenu set_menu = menu.addSubMenu(0, 1, 2, "设置");set_menu.add(2, 21, 1, "红色");set_menu.add(2, 22, 2, "蓝色");set_menu.add(2, 23, 3, "绿色");set_menu.setGroupCheckable(2, true, false);//创建选项菜单menu.add(0, 2, 3, "关于");return super.onCreateOptionsMenu(menu);}/** * 选项菜单的事件 */@Overridepublic boolean onOptionsItemSelected(MenuItem item) {LinearLayout layout = (LinearLayout) findViewById(R.id.layout);//设置菜单选择,若没选中则让他选中,若选中则让他不选中item.setChecked(!item.isChecked());switch (item.getItemId()) {case 0://选项菜单的响应Log.i("选中的menu", "文件被选中");break;case 1:Log.i("选中的menu", "设置被选中");break;case 2:Log.i("选中的menu", "关于被选中");break;case 21://子菜单的响应layout.setBackgroundColor(Color.RED);break;case 22:layout.setBackgroundColor(Color.BLUE);break;case 23:layout.setBackgroundColor(Color.GREEN);break;default:break;}return super.onOptionsItemSelected(item);}/** * 创建上下文菜单,点击屏幕2秒钟,弹出菜单 */@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {// 从资源文件读取设置字体大小的菜单,此时菜单已创建getMenuInflater().inflate(R.menu.context_menu, menu);super.onCreateContextMenu(menu, v, menuInfo);}/** * 上下文菜单控制按钮字体大小 * getItemId() 表示获取上下文菜单选项的Id */@Overridepublic boolean onContextItemSelected(MenuItem item) {Button btn = (Button) findViewById(R.id.btn);switch (item.getItemId()) {case R.id.font_min:btn.setTextSize(10);break;case R.id.font_nomal:btn.setTextSize(15);break;case R.id.font_large:btn.setTextSize(20);break;default:break;}return super.onContextItemSelected(item);}}

 

布局XML文件:

<?xml version="1.0" encoding="utf-8"?>    

 

菜单XML,控制字体大小:

<?xml version="1.0" encoding="utf-8"?>        


 

 

更多相关文章

  1. Android之Menu菜单 onCreateOptionsMenu使用Menu按键显示不了问
  2. Android 创建菜单
  3. Android 自定义系统菜单的背景源码
  4. android实现左右滑动菜单
  5. [Android]自定义系统菜单的背景
  6. Android 二级动画弹出菜单
  7. android Menu 菜单使用总结
  8. android 长按菜单的使用
  9. android 添加menu 菜单项

随机推荐

  1. android 使用代码实现 RelativeLayout布
  2. Link Android(安卓)Source Code to Eclip
  3. 【NFC】Android(安卓)NFC API Reference
  4. Android(安卓)ViewPager 中嵌套webview
  5. Android如何从服务器获取图片
  6. Android:Gallery
  7. Android采用SAX解析XML文档
  8. Android(安卓)SQLite服务--创建、增删改
  9. Android(安卓)Frame Animation
  10. Android(安卓)Stdio实现简单计算器