菜单分三种类型:选项菜单(OptionsMenu)、上下文菜单(ContextMenu)、子菜单(SubMenu)
选项菜单(OptionsMenu)
创建选项菜单:onCreateOptionsMenu()
-设置菜单项可用代码动态设置menu.add()
-还可以通过XML设置MenuInflaterinflate()
设置菜单点击事件:onOptionsItemSelected()
public boolean onCreateOptionsMenu(Menu menu) {
// getMenuInflater().inflate(R.menu.main, menu);
MenuItem item = menu.add(1, 100, 1, "菜单一");
item.setTitle("aaa");
item.setIcon(R.drawable.ic_launcher);// api>=11 不显示图标 ,
menu.add(1, 101, 1, "菜单二");
menu.add(1, 102, 1, "菜单三");
menu.add(1, 103, 1, "菜单四");
menu.add(1, 104, 1, "菜单五");
menu.add(1, 105, 1, "菜单六");
menu.add(1, 106, 1, "菜单七");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case 100:
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
item.setIntent(intent);
break;
case 101:
Toast.makeText(MainActivity.this, "点击了菜单二", Toast.LENGTH_SHORT)
.show();
break;
case 102:
Toast.makeText(MainActivity.this, "点击了菜单三", Toast.LENGTH_SHORT)
.show();
break;
case 103:
Toast.makeText(MainActivity.this, "点击了菜单四", Toast.LENGTH_SHORT)
.show();
break;
case 104:
Toast.makeText(MainActivity.this, "点击了菜单五", Toast.LENGTH_SHORT)
.show();
break;
case 105:
Toast.makeText(MainActivity.this, "点击了菜单六", Toast.LENGTH_SHORT)
.show();
break;
case 106:
Toast.makeText(MainActivity.this, "点击了菜单七", Toast.LENGTH_SHORT)
.show();
break;
}
return super.onOptionsItemSelected(item);
}