[android ui]ActionBar的Action图标区添加
2014-04-23 14:29
465 查看
ActionBar的隐藏和现实
ActionBar bar = getActionBar();bar.hide(); //隐藏Action Bar
bar.show(); //显示Action Bar
ActionBar的action图标区
ActionBar的右侧就是action图标区域,如下图所示这是ActionBar的menu区域,作为options menu的一部分,选择部分的菜单项在action bar中显示。我们先看看源代码,没有什么特别。小例子是在上一学习的例子上进行添加,直接采用继承方式。
public class ActionAreaTestCase2 extends HomePressTestCase1{
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.bar, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
showInfo("select : " + item.getTitle());
return super.onOptionsItemSelected(item);
}
}
关键看看R.menu.bar的xml是如何设置。
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/menu_action_icon1"
android:title="Action1"
android:icon="@drawable/creep001"
android:showAsAction="ifRoom"/> <!-- 与一般的item相比,增加了showAsAction的设置,表明在action bar中显示的情况,除了ifRoom,还有always、never、withText。也可以在代码中通过menuItem.setShowAsAction(int)来实现 -->
<item android:id="@+id/menu_action_icon2"
android:title="Action2"
android:icon="@drawable/creep002"
android:showAsAction="ifRoom"/>
<item android:id="@+id/menu_action_icon3"
android:title="Action3"
android:icon="@drawable/creep003"
android:showAsAction="ifRoom"/>
... ...
</menu>
如果我们要求在action bar显示的菜单项太多,超过action bar的空间时,则在普通的OptionsMenu位置显示,例如我们设置了6个菜单项,属性均有:android:showAsAction="ifRoom",显示如下:
如果在menu的xml文件中,有些属性没有设置为showAsAction,则这些item按常规的菜单方式显示。如下图:Normal的item是普通的菜单项:
如果我们没有设置图标,只设置了title,则显示文字,xml片段如下:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/menu_action_icon1"
android:title="Action1"
android:showAsAction="ifRoom"/> <!-- 没有icon的例子 -->
<item android:id="@+id/menu_action_icon2"
android:title="Action2"
android:icon="@drawable/creep002"
android:showAsAction="ifRoom|withText"/> <!-- 同时显示icon和文字的例子 -->
… …
</menu>
相关文章推荐
- Android UI ActionBar功能-启动ActionBar
- Android官方开发文档Training系列课程中文版:添加ActionBar之ActionBar浮层效果
- Android UI ActionBar功能-启动ActionBar
- Android UI ActionBar功能-在 Action Bar 上添加按钮
- Android 开发之为ActionBar 添加Actionbar Button
- Android Support V7 包中 ActionBar的使用 (1) 添加Action Item
- [android ui]ActionBar的Home图标区返回功能实现
- Android UI ActionBar功能-在 Action Bar 上添加按钮
- Android UI ActionBar功能-在 Action Bar 上添加按钮
- actionbar hide icon/logo 去掉android actionbar左侧图标
- Android官方开发文档Training系列课程中文版:添加ActionBar之添加Action按钮
- Android UI ActionBar功能-在 Action Bar 上添加按钮
- Android UI ActionBar功能-启动ActionBar
- Android 加载时在actionBar右上角添加一个加载图标
- Android 开发之为ActionBar 添加Actionbar Button
- 去掉Actionbar左侧的图标<style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar"> <it
- Android添加新版本支持包V7后自定义ActionBar左侧有空白,不能完全填充问题解决
- Android UI ActionBar功能-自定义 Action Bar 样式
- 中秋深夜码字,完成了一个底部导航栏(Android自定义控件),一键添加图标和文字
- Android学习路线(六)为Android应用添加ActionBar