android之actionbar 入门
2015-11-19 22:06
309 查看
在menu下新建一个actionbar.xml文件,或者直接用下边的main.xml,然后输入代码
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/calendar"
android:icon="@drawable/calendar48"
android:showAsAction="always"
/>
<item
android:id="@+id/search"
android:title="@string/search"
android:icon="@drawable/search48"
android:showAsAction="always"
/>
<item
android:id="@+id/setting"
android:title="@string/setting"
android:showAsAction="never"
/>
</menu>
[/code]
ifRoom | 会显示在Item中,但是如果已经有4个或者4个以上的Item时会隐藏在溢出列表中。当然个 |
数并不仅仅局限于4个,依据屏幕的宽窄而定 | |
never | 永远不会显示。只会在溢出列表中显示,而且只显示标题,所以在定义item的时候,最好 |
把标题都带上。 | |
always | 无论是否溢出,总会显示。 |
withText | withText值示意Action bar要显示文本标题。Action bar会尽可能的显示这个 |
标题,但是,如果图标有效并且受到Action bar空间的限制,文本标题有可 | |
能显示不全。 | |
collapseActionView | 声明了这个操作视窗应该被折叠到一个按钮中,当用户选择这个按钮时,这个操作视窗展开。否则, |
这个操作视窗在默认的情况下是可见的,并且即便在用于不适用的时候,也要占据操作栏的有效空间。 | |
一般要配合ifRoom一起使用才会有效果。 |
接着在重写Activity的onCreateOptionsMenu()方法,代码如下
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// 为ActionBar扩展菜单项
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.actionbar, menu);
return super.onCreateOptionsMenu(menu);
}
[/code]
当用户点击Action按钮的时候,系统会调用Activity的onOptionsItemSelected()方法,通过方法传入的MenuItem参数,我们可以调用它的getItemId()方法和menu资源中的id进行比较,从而辨别出用户点击的是哪一个Action按钮
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.search:
Toast.makeText(this, "你点击了“搜索”按键!", Toast.LENGTH_SHORT).show();
return true;
case R.id.setting:
Toast.makeText(this, "你点击了“设置”按键!", Toast.LENGTH_SHORT).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
[/code]
转载于:https://my.oschina.net/u/1466327/blog/532938
相关文章推荐
- Android应用开发中Action bar编写的入门教程
- Android入门之ActionBar实现Tab导航
- Android应用开发中Action bar编写的入门教程
- Android入门之ActionBar实现Tab导航
- AndroidActionBar入门小测试
- Android开发入门之Action Bar用户交互
- Android ActionBar开发技巧
- Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)
- Call requires API level 11 (current min is 7): android.app.ActionBar#setDisplayShowHomeEnabled
- Android UI ActionBar功能-在 Action Bar 上添加按钮
- Android UI ActionBar功能-ActionBarSherlock 的使用
- Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)
- android ActionBar用法详解
- Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)
- android 解决自定义actionbar左右两边有间距问题记录
- android actionbar tab style
- Android ActionBar控件使用
- Android ActionBar完全解析,使用官方推荐的最佳导航栏(下)
- 基于Android ActionBar的SearchView实时搜索结果
- 【Android UI设计与开发】8.顶部标题栏(一)ActionBar 奥义·详解