standupTimer项目中选项菜单的应用

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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值