android创建optionsmenu的方法

所属分类: 软件编程 / Android 阅读数: 278
收藏 0 赞 0 分享

本文实例讲述了android创建optionsmenu的方法。分享给大家供大家参考。具体实现方法如下:

一、用xml配置

在res文件夹下新建menu文件夹,menu下新建options_menu.xml文件,加入代码

1、

<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/about"
android:title="关于"
android:checkable="true" />
<item android:id="@+id/choose"
android:title="选择" />
<item android:id="@+id/quit"
android:title="QUIT" />
</menu>

2、activity类中加入代码

public boolean onCreateOptionsMenu(Menu menu) {
 MenuInflater inflater = getMenuInflater();
 inflater.inflate(R.menu.options_menu, menu);
 return super.onCreateOptionsMenu(menu);
 }
 public boolean onOptionsItemSelected(MenuItem aitem)
 {
 super.onOptionsItemSelected(aitem);
 switch(aitem.getItemId())
 {
 case R.id.about:
 setTitle("你按下了'关于'菜单项");
 progressBarHorizontal.setProgress(200);
 openOptionsDialog();
 break;
 case R.id.choose:
 setTitle("你按下了'选择'菜单项");
 openOptionsChooseDialog();
 break;
 case R.id.quit:
 setTitle("你按下了'离开'菜单项");
 finish();
 break;
 }
 return true;
 }
 private void openOptionsDialog()
 {
 new AlertDialog.Builder(this)
 .setTitle(R.string.app_about)
 .setMessage(R.string.app_about_msg)
 .setPositiveButton(R.string.str_ok, new DialogInterface.OnClickListener()
 {
 public void onClick(DialogInterface dialoginterface, int i)
 {
 }
 })
 .show();
 }
 private void openOptionsChooseDialog()
 {
 new AlertDialog.Builder(this)
 .setTitle(R.string.str_alert)
 .setItems(R.array.items_irdc_dialog, new DialogInterface.OnClickListener()
 {
 public void onClick(DialogInterface dialoginterface, int i)
 {/*
 String[] aryShop = getResources().getStringArray(R.array.items_irdc_dialog);
 new AlertDialog.Builder(this)
 .setMessage(R.string.app_about_msg)
 .setPositiveButton(R.string.str_ok, new DialogInterface.OnClickListener()
 {
 public void onClick(DialogInterface dialoginterface, int i)
 {
 }
 })
 .show();*/
 }
 })
 .show();
}

OK。。。

二、直接上代码:

public static final int ABOUT_ID = Menu.FIRST;
public static final int CHOOSE_ID = Menu.FIRST + 1;
public static final int EXIT_ID = Menu.FIRST + 2;
public boolean onCreateOptionsMenu(Menu menu)
{
 menu.add(0, ABOUT_ID, 0, R.string.app_about);
 menu.add(0, CHOOSE_ID, 0, R.string.str_choose);
 menu.add(0, EXIT_ID, 0, R.string.str_exit);
 return super.onCreateOptionsMenu(menu);
 }
 public boolean onOptionsItemSelected(MenuItem aitem)
 {
 super.onOptionsItemSelected(aitem);
 switch(aitem.getItemId())
 {
 case ABOUT_ID:
 setTitle("你按下了'关于'菜单项");
 progressBarHorizontal.setProgress(200);
 openOptionsDialog();
 break;
 case CHOOSE_ID:
 setTitle("你按下了'选择'菜单项");
 openOptionsChooseDialog();
 break;
 case EXIT_ID:
 setTitle("你按下了'离开'菜单项");
 finish();
 break;
 }
 return true;
 }
 private void openOptionsDialog()
 {
 new AlertDialog.Builder(this)
 .setTitle(R.string.app_about)
 .setMessage(R.string.app_about_msg)
 .setPositiveButton(R.string.str_ok, new DialogInterface.OnClickListener()
 {
 public void onClick(DialogInterface dialoginterface, int i)
 {
  
 }
 })
 .show();
 }
 private void openOptionsChooseDialog()
 {
 new AlertDialog.Builder(this)
 .setTitle(R.string.str_alert)
 .setItems(R.array.items_irdc_dialog, new DialogInterface.OnClickListener()
 {
 public void onClick(DialogInterface dialoginterface, int i)
 {/*
 String[] aryShop = getResources().getStringArray(R.array.items_irdc_dialog);
 new AlertDialog.Builder(this)
 .setMessage(R.string.app_about_msg)
 .setPositiveButton(R.string.str_ok, new DialogInterface.OnClickListener()
 {
 public void onClick(DialogInterface dialoginterface, int i)
 {
  
 }
 })
 .show();*/
 }
 })
 .show();
}

希望本文所述对大家的Android程序设计有所帮助。

更多精彩内容其他人还在看

Android样式和主题之选择器的实例讲解

今天小编就为大家分享一篇关于Android样式和主题之选择器的实例讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

Android应用动态修改主题的方法示例

今天小编就为大家分享一篇关于Android应用动态修改主题的方法示例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

Flutter 网络请求框架封装详解

这篇文章主要介绍了Flutter 网络请求框架封装详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Flutter倒计时/计时器的实现代码

这篇文章主要介绍了Flutter倒计时/计时器的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Android使用google breakpad捕获分析native cash

这篇文章主要介绍了Android使用google breakpad捕获分析native cash 的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

详解Flutter WebView与JS互相调用简易指南

这篇文章主要介绍了详解Flutter WebView与JS互相调用简易指南,分为JS调用Flutter和Flutter调用JS,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Android开发实现ListView和adapter配合显示图片和文字列表功能示例

这篇文章主要介绍了Android开发实现ListView和adapter配合显示图片和文字列表功能,涉及Android使用ListView结合adapter适配器实现图文显示功能相关的布局、解析、权限控制等操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

Android文字基线Baseline算法的使用讲解

今天小编就为大家分享一篇关于Android文字基线Baseline算法的使用讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

Flutter自定义实现神奇动效的卡片切换视图的示例代码

这篇文章主要介绍了Flutter自定义实现神奇动效的卡片切换视图的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Android实现自定义滑动刻度尺方法示例

这篇文章主要给大家介绍了关于Android实现自定义滑动刻度尺的相关资料,文中通过示例代码介绍的非常详细,对各位Android开发者们具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享
查看更多