- 浏览: 827273 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
renzhengzhi:
请教一下楼主,公有云和私有云的开发,具体要做哪些工作呢?我拿到 ...
4,云的4 种模式 -
SangBillLee:
我用了solr5.5,用SolrQuery查询,没法高亮,不知 ...
solr5.x快速入门 -
lw900925:
这翻译读起来真是别扭。
solr in action翻译-第一章1.1 -
springjpa_springmvc:
spring mvc demo教程源代码下载,地址:http: ...
Spring MVC性能提升 -
h416373073:
正遇到了此问题不知如何解决, 多谢分享
solr错误
我们传统意义上 的定义菜单感觉比较繁琐,当我们使用MenuInflater 来生成菜单,你会发现是多么的爽朗,呵呵,我今天的小Demo,是定义四个菜单,并且实现了一个菜单事件。就是我们点击设置 (Setting )菜单,进入手机设置状态!下面看一下效果图:
下面是实现Demo 的详细步骤: 一、建立一个Android 工程我们命名为MenuInflaterDemo . 二、在res 目录下创建menu 目录,并且创建options_menu.xml (我们定义的菜单)文件,代码如下: Java代码: 1. <?xml version="1.0" encoding="utf-8"?> 2. <menu 3. xmlns:android="http://schemas.android.com/apk/res/android"> 4. <item android:id="@+id/menu_add" 5. android:title="Add" 6. android:icon="@android:drawable/ic_menu_add" 7. /> 8. <item android:id="@+id/menu_wallaper" 9. android:title="Wallpaper" 10. android:icon="@android:drawable/ic_menu_gallery" 11. /> 12. <item android:id="@+id/menu_search" 13. android:title="Search" 14. android:icon="@android:drawable/ic_search_category_default" 15. /> 16. <item android:id="@+id/menu_setting" 17. android:title="Settings" 18. android:icon="@android:drawable/ic_menu_preferences" 19. /> 20. </menu>
三、主类MenuInflaterDemo.java 的编码,这里写的代码很少哦,我这里只写了第四个菜单(Settings )的响应事件.全部代码如下:
Java代码:
1. package eoe.demo;
2. import android.app.Activity;
3. import android.content.Intent;
4. import android.os.Bundle;
5. import android.view.Menu;
6. import android.view.MenuInflater;
7. import android.view.MenuItem;
8. public class MenuInflaterDemo extends Activity {
9. @Override
10. public void onCreate(Bundle savedInstanceState) {
11. super.onCreate(savedInstanceState);
12. setContentView(R.layout.main);
13. }
14. @Override
15. public boolean onCreateOptionsMenu(Menu menu) {
16. MenuInflater inflater = getMenuInflater();
17. inflater.inflate(R.menu.options_menu, menu);
18. return true;
19. }
20. @Override
21. public boolean onOptionsItemSelected(MenuItem item) {
22. switch (item.getItemId()) {
23. case R.id.menu_add:
24. break;
25. case R.id.menu_wallaper:
26. break;
27. case R.id.menu_search:
28. break;
29. case R.id.menu_setting:
30. showSettings();
31. break;
32. }
33. return super.onOptionsItemSelected(item);
34. }
35. private void showSettings(){
36. final Intent settings = new Intent(android.provider.Settings.ACTION_SETTINGS);
37. settings.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |
38. Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
39. startActivity(settings);
40. }
41. }
四、运行代码之,点击模拟器上的menu 按钮将会出现上述效果图!
public class MenuInflaterTest extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public boolean onCreateOptionsMenu(Menu menu) {
// 获取当前的菜单
MenuInflater inflater = getMenuInflater();
// 填充菜单
inflater.inflate(R.menu.option_menu, menu);
return true;
}
/**
* 对菜单点击事件处理
*/
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_add:
break;
case R.id.menu_wallaper:
break;
case R.id.menu_search:
break;
case R.id.menu_setting:
showSettings();
break;
}
return super.onOptionsItemSelected(item);
}
/**
* 显示设置选项
*/
private void showSettings() {
Intent settings = new Intent
(android.provider.Settings.ACTION_SETTINGS);
settings.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
startActivity(settings);
}
}
}
Main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
Option_menu.xml
发表评论
-
Android SDK更新 Connection to http://dl-ssl.google.com refused 解决方法 .
2013-10-10 11:38 1182问题描述使用SDK Manager ... -
android 对话框中的进度条 (ProgressDialog)
2012-03-10 00:16 2560显然要定义对话框进 ... -
Android开发学习笔记WebView
2012-02-28 21:59 5114WebView(网络视图)能加载 ... -
Android ListView理解之BaseAdapter .
2012-02-28 21:43 2042ListView是Android开发过程中较为常见的组件之一, ... -
AsyncTask的用法
2012-02-27 21:36 885在开发Android应用时必须遵守单线程模型的原则: An ... -
android中的ellipsize
2012-02-26 17:47 1062最近为了解决某个bug,textview中内容过长的话自动 ... -
BaseExpandableListAdapter
2012-02-26 17:40 1547转载自:中国手机开 ... -
使用命令安装apk的方法
2012-02-26 15:44 1687使用命令安装apk的方法, 第一步,将应用防止在androi ... -
Android PendingIntent和Intent的区别
2012-02-16 22:39 1722以前在学习AlarmManager里面会遇到PendingI ... -
android中gallery的使用
2012-02-13 22:52 25111,创建配置文件 <?xml version=&quo ... -
android的tabHost的使用
2012-02-13 22:10 1564废话不多,直接介绍怎么使用 1,用几个tab,就建立几个ta ... -
android源码解析之二ApplicaitonInfo和PackageManager
2012-02-07 13:26 2245ApplicationInfo ApplicationIn ... -
android源码解读一(Context)
2012-02-05 21:13 4248Context类 Context是一个抽象类 public ... -
android 属性android:visibility
2012-02-05 12:16 934此属性意思是此视图是否显示, 例如RelativeLayou ... -
android默认焦点设置的方法
2012-02-05 12:13 18901在使用到文本框(EditText)来进行数据录入的时候,有时默 ... -
imageView.setScaleType
2012-02-03 17:36 5985imageView.setScaleType(ImageVie ... -
文件在SD卡存储
2012-02-02 10:47 1755手机的存储空间分俩种,一种是手机自带的,另一种是SD卡,(外存 ... -
广播接收者
2012-02-02 10:45 1213广播接受者(BroadcastReceiv ... -
android的服务
2012-02-02 10:45 973服务android中服务和window中的服务是类似的东西,服 ... -
android资源的应用
2012-02-02 10:43 1455color颜色在配置文件中定义路径:res/values/co ...
相关推荐
本篇文章小编为大家介绍,用Android MenuInflater创建菜单项的方法步骤。需要的朋友参考下
菜单是用很好的旧xml定义的,并使用自定义menuinflater进行解析。SublimitenavigationView与可分块菜单一起工作,这意味着状态保留是内置的。此外,它可以支持多个菜单,同时保持各自的状态。添加到菜单中的组具有可...
本文实例讲述了Android创建Menu菜单的方法。分享给大家供大家参考。具体方法如下: 代码如下:package com.test; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import ...
Android高手进阶教程.pdf,本书需要读者有一定的android基础,主要内容:Android常用名令集锦; Android Launcher抽屉类SlidingDrawer 的使用;...Android 中MenuInflater的使用(布局定义菜单)····
Android高手进阶教程之----Android 中MenuInflater的使用(布局定义菜单)! .doc Android高手进阶教程之----Android 中Preferences的使用! .doc Android高手进阶教程之----Android 中自定义View的应用.doc Android高手...
MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main, menu); return true; } step2: main.xml文件布局 <menu xmlns:android=http://schemas.android.com/apk/res/a