Android的选项菜单,用代码编写

package com.example.caidan;

import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
import android.os.Build;

public class MainActivity extends Activity {
	//定义
	private  static final int START_ITEM=Menu.FIRST;
	private  static final int OVER_ITEM=Menu.FIRST+1;
	private  static final int SET_ITEM1=Menu.FIRST+2;
	private  static final int SET_ITEM2=Menu.FIRST+3;
	private  static final int caidan_ITEM1=Menu.FIRST+4;
	private  static final int caidan_ITEM2=Menu.FIRST+5;
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

       
    }
//重写onCreateOptionsMenu的方法
//第一次调用菜单项时候被触发的菜单。。。
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
  // getMenuInflater的意思是菜单加载器。。用来读取配置的菜单
 //填充选项菜单(读取XML文件,解析,加载到MENU组件上)
      //  getMenuInflater().inflate(R.menu.main, menu);
    	/**
    	 * 用代码编写选项菜单
    	 */
    	
    	//添加菜单项(组ID,菜单项ID,排序,标题)
    	menu.add(0, START_ITEM, 100,"开始");
 
    	
    	menu.add(0, OVER_ITEM, 200,"结束");
    	//添加子菜单
    	SubMenu sub1=  menu.addSubMenu("设置");
    	sub1.add(1, SET_ITEM1, 300, "声音");
    	sub1.add(1, SET_ITEM2, 400, "字体");
    	//添加子菜单
    	SubMenu sub2=  menu.addSubMenu("菜单");
    	sub2.add(2, caidan_ITEM1, 500, "日历");
    	sub2.add(2, caidan_ITEM2, 600, "照相机");
    //写这个输出是为了在LOG中看它的运行状态
        System.out.println("on creatoption menu");
        return true;
    }
//实现菜单项的事件。意思是选项菜单项的选择。就是单机菜单按钮后引发的事件
    //重写 onOptionsItemSelected方法实现菜单项 的事件
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
    	//写这个输出是为了在LOG中看它的运行状态
    	System.out.println("on option Item Selected");
	  switch (item.getItemId()) {
	case START_ITEM:
		//提示信息
		Toast.makeText(this, "开始游戏", Toast.LENGTH_SHORT).show();
		break;
	case OVER_ITEM:
		Toast.makeText(this, "结束游戏", Toast.LENGTH_SHORT).show();
		break;
	case SET_ITEM1:
		Toast.makeText(this, "声音设置", Toast.LENGTH_SHORT).show();
		break;
	case SET_ITEM2:
		Toast.makeText(this, "字体设置", Toast.LENGTH_SHORT).show();
		break;
	case caidan_ITEM1:
		Toast.makeText(this, "日历设置", Toast.LENGTH_SHORT).show();
		break;
	case caidan_ITEM2:
		Toast.makeText(this, "照相机设置", Toast.LENGTH_SHORT).show();
		break;
	default:
		break;
	}
        return super.onOptionsItemSelected(item);
    }
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值