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);
}
}
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);
}
}