WEB开发网
开发学院手机开发Android 开发 Android SDK 开发之创建菜单 阅读

Android SDK 开发之创建菜单

 2010-03-23 04:18:00 来源:WEB开发网   
核心提示:editMenu.add("redo");return result;}选择子菜单中的选项将被onOptionsItemSelected()回调函数处理,你也可以使用xml来增加子菜单,Android SDK 开发之创建菜单(4),Define Menus in XML 在xml中定义菜单就像And

editMenu.add("redo");

return result;

}

选择子菜单中的选项将被onOptionsItemSelected()回调函数处理。你也可以使用xml来增加子菜单。

Define Menus in XML 在xml中定义菜单

就像Android UI布局一样,你就可以在xml里定义应用程序菜单,然后在你的菜单的onCreate...()回调函数中展开它。这使得你的应用程序代码更加整洁,并且把界面设计放到xml里面也更加直观。

首先,建一个文件夹res/menu。这是你所有的定义菜单的xml文件的位置。

在一个菜单xml布局中,有3个有效元素:

,和。菜单项和组元素必须为菜单的子元素,但菜单项元素也可以为一个组的子元素,另一个菜单元素也可以为一个菜单项的子元素(在子菜单中)。任何文件的根元素必须为一个菜单元素。

我们以一个选项菜单为例,建立一个名为options_menu.xml的文件:

《menu xmlns:android="http://schemas.android.com/apk/res/android"》

《item android:id="@+id/new_game"

android:title="New Game" /》

《item android:id="@+id/quit"

android:title="Quit" /》

《/menu》

然后,在onCreateOptionsMenu() 方法中展开这个菜单:

public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater inflater = getMenuInflater();

inflater.inflate(R.menu.options_menu, menu);

return true;

}

getMenuInflater()方法返回我们的activity的context的MenuInflater。我们然后可以调用inflate(),把指向Menu对象的一个指针传给它。

在创建项目比较多的菜单时,这样做会保持我们代码的清晰。

你可以将菜单项放在一个group元素中来使他们组成一个组,也可以将一个菜单嵌套在另一个菜单中形成子菜单。每个元素支持所有的控制属性包括快捷键、复选框、图标等。详见Available Resource Types一文的 Menus 节。

Menu Features 菜单特性

这里是一些大多数菜单具有的其他特性。

Menu groups 菜单组

当给一个菜单加入项时,你可以把它们组成一个菜单组。一个菜单组是一组菜单项的集合,它们具有某些相似的特性,例如可见性、有效性和可选择性。

上一页  1 2 3 4 5 6 7  下一页

Tags:Android SDK 开发

编辑录入:coldstar [复制链接] [打 印]
赞助商链接