Android SDK 开发之创建菜单
2010-03-23 04:18:00 来源:WEB开发网创建菜单
菜单是应用程序的重要组成部分。它们一般用于调出程序功能和设置。Android提供了一套很简单的创建标准菜单的接口。
Android提供了三种基本的菜单类型:
选项菜单(Options Menu)是最主要的菜单类型。它使用MENU键呼出。在选项菜单中有两组菜单项:
图标菜单 这是按下menu后一开始就可见的一组菜单。最大支持6个菜单项。这是唯一一种支持图标的菜单项,也是唯一一种不支持单选框和复选框的菜单。
扩展菜单 这是一个直排菜单,使用图标菜单上的"More"项调出。它只在图标菜单项目大于6个时存在。
快捷菜单(Context Menu)是在某个View对象上长按呼出的菜单。
子菜单(Submenu)是按下选项菜单或快捷菜单的一项时弹出的菜单。子菜单不支持嵌套子菜单。
Options Menu 选项菜单
选项菜单使用menu键调出。选项菜单最多容纳6个元素,如果多余6个则自动放在扩展菜单中。
选项菜单是你应该包含应用程序基本功能的地方,以及其他的项目(例如一个主屏幕或者一个应用程序设置)。你也可以增加子菜单来管理程序设置。
当菜单第一次被打开时,Android系统会调用onCreateOptionsMenu()方法。你可以使用xml或者add()方法来给菜单增加项目。 add()方法增加一个菜单项目并返回它的引用。你可以用返回的引用来设置额外的属性,例如图标、快捷键、intent等。
有好几个add()方法。一般来说你使用接受一个itemId参数的那一个。itemId是一个用来标识一个菜单项的唯一的整数。当一个菜单项被选中时,系统调用onOptionsItemSelected()方法。该回调函数传递一个MenuItem对象表示你选中的对象。你可以使用getItemId()方法来得到id,以进行对应的操作。
这里是一个增加菜单项的例子:
/* Creates the menu items */
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, MENU_NEW_GAME, 0, "New Game");
menu.add(0, MENU_QUIT, 0, "Quit");
return true;
}
/* Handles item selections */
public boolean onOptionsItemSelected(MenuItem item) {
更多精彩
赞助商链接