standupTimer项目中选项菜单的应用

来源:互联网 发布:知秋的名字有什么意思 编辑:程序博客网 时间:2024/05/18 03:29

standupTimer项目中菜单的应用很常规,没有什么难的地方,新手一看就懂,这里简单把代码贴到下面来;


首先定义一个菜单的xml文件,供菜单加载使用,standupTimer项目中的菜单的xml文件如下:
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" >    <item        android:id="@+id/settings"        android:alphabeticShortcut="s"        android:icon="@android:drawable/ic_menu_preferences"        android:title="@string/settings_label"/>    <item        android:id="@+id/teams"        android:alphabeticShortcut="t"        android:icon="@drawable/team"        android:title="@string/team_label"/>    <item        android:id="@+id/about"        android:alphabeticShortcut="a"        android:icon="@android:drawable/ic_menu_info_details"        android:title="@string/about_label"/>    <item        android:id="@+id/help"        android:alphabeticShortcut="h"        android:icon="@android:drawable/ic_menu_help"        android:title="@string/help_label"/></menu></span>


再在onCreateOptionsMenu()方法中把xml的菜单文件填充进来:

public boolean onCreateOptionsMenu(Menu menu) {super.onCreateOptionsMenu(menu);MenuInflater inflater = getMenuInflater();inflater.inflate(R.menu.menu, menu);return true;}

然后在实现菜单中各个条目对应的功能,功能实现在onOptionsItemSelected()方法中:

public boolean onOptionsItemSelected(MenuItem item) {switch (item.getItemId()) {case R.id.about:Logger.d("Displaying the about box");displayAboutBox();return true;case R.id.help:Logger.d("Displaying the help dialog");displayHelpDialog();return true;case R.id.settings:Logger.d("Displaying the settings");displaySettings();return true;case R.id.teams:Logger.d("Displaying the team configuration");displayTeamConfiguration();return true;default:Logger.e("Unknown menu item selected");return false;}}

从代码和流程上看起来简单明了,这也是Android中菜单的最简单的使用。当然Android中的菜单所实现的功能远远不止这么点,以上两种方法是最长用到的方法,除此之外的方法还有:

public void onOptionsMenuClosed(Menu menu):菜单关闭后发生的动作;
public boolean onPrepareOptionsMenu(Menu menu):选项菜单显示之前该方法会被调用,你可以用此方法来根据具体情况来调整菜单;
public boolean onMenuOpened(int featureId, Menu menu):菜单打开后发生的动作;

这些只是选项菜单的使用,而在Android中除了选项菜单(OptionsMenu)之外,还有上下文菜单(也称为长按菜单)( ContextMenu)和子菜单(SubMenu);关于上下文菜单和子菜单的使用,我会在另外的博客中做下大致的总结!


参考网址:
http://www.cnblogs.com/devinzhang/archive/2012/01/30/2332085.html

0 0
原创粉丝点击