Android的菜单

2014-11-24 10:17:07 · 作者: · 浏览: 0

1.options菜单
这种菜单最多显示5个,多余的在第六个有More,点击弹出其他没有显示的菜单。


在Activity中覆盖onCreateOptionsMenu方法


menu.add(int groupId, int itemId, int order, CharSequence title)


第一个参数组的ID,第二个是本菜单的ID,第三个是顺序,第四个是菜单上显示的字符串。


显示的顺序是先显示组,在组中按照第三个参数显示。如果第三个参数是0,则按照添加的顺序显示。


覆盖onOptionsItemSelected,在这个方法中作出对时间的响应。


public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
Toast.makeText(this, item.getItemId()+"", Toast.LENGTH_LONG).show();
return super.onOptionsItemSelected(item);
}


2.SubMenu
与options菜单在相同的方法里操作


SubMenu sub=menu.addSubMenu("子菜单");
sub.add(0, 3, 0, "子菜单1");


3.ContextMenu
覆盖onCreateContextMenu方法,在这个方法里操作


menu.add(0, 0, 0, "contextmenu");


覆盖onContextItemSelected,在这个方法中对时间作出响应


public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
Toast.makeText(this, item.getItemId()+"", Toast.LENGTH_LONG).show();
return super.onContextItemSelected(item);
}


注意:ContextMenu必须注册到一个View


registerForContextMenu(View b)中的b是一个View的对象。


另外可以使用


来添加菜单,菜单资源在XML文件中,XML文件位于res/menu/the.xml