ActionBar

一, 说明

是一个动作栏 是窗口特性 提供给用户动作 导航模式 可以适配不同的屏幕

二, ActionBar 提供的功能

1. 显示菜单项
always:总是展示到ActionBar
ifRoom:如果actionBar上有剩余空间 展示出来 没有的话 展示到溢出菜单
never:展示溢出菜单 2. 使用应用程序的图片 回到HOME 或者返回到 上一级 3. 自定义View actionView 4. 提供了导航模式 5. 提供了ActionProvider

三, ActionBar 作用

  1. 提供给用户指定的空间
  2. 把重要的动作 或容易访问的 动作
  3. 提供了导航

四, a

1. ActionBar的样式:在清单文件修改主题
换主题 换不同的action样式
android:theme="@style/AppTheme"
android:theme="@android:style/Theme.Light"
android:theme="@android:style/Theme.Holo"
android:theme="@android:style/Theme.Holo.Light"
android:theme="@android:style/Theme.Holo.NoActionBar" 2. ActionBar的显示和隐藏
>隐藏:1,主题 NoActionBar
2,在逻辑代码中 获取ActionBar getActionBar() 控制隐藏
3,requestWindowFeature(Window.FEATURE_NO_TITLE); 在设置布局之前调用
>显示:1,选有ActionBar主题
2,在逻辑代码中 获取ActionBar getActionBar() 控制显示 show() 3. 创建View >res/menu 添加菜单项
android:showAsAction="always" 菜单项的展示位置 在逻辑代码中使用选项菜单的俩个方法 一个添加菜单项 另一个进行监听

五, 分割栏操作

在清单文件中的 或者

添加属性: android:uiOptions=”splitActionBarWhenNarrow”

六, 启动导航图标

//应用图标是否能点击 带一个向左的箭头

actionBar.setDisplayHomeAsUpEnabled(true);

//应用图标是否能点击 不带箭头

//actionBar.setHomeButtonEnabled(true);

    //是否显示应用程序图标
actionBar.setDisplayShowHomeEnabled(true); note:y应用图标的id:android.R.id.home

七, Action View 的使用

系统控件:包名+类名android:actionViewClass=”” 添加View 如果是系统提供的控件(包名.类名)

    >自定义布局   android:actionLayout="@layout/layout" 添加自定义的View  

>展开和折叠:
在菜单布局中设置: android:showAsAction="collapseActionView"
可以用按钮设置监听 让菜单项展开和折叠 展开和折叠可以设置监听:
note:方法里的返回值 设置成true 返回false 不会折叠 //展开和折叠的监听
spinnerItem.setOnActionExpandListener(new OnActionExpandListener() { @Override
public boolean onMenuItemActionExpand(MenuItem item) {
// TODO Auto-generated method stub tvSHow.setText("==onMenuItemActionExpand===展开====");
return true;//返回false 不会折叠
} @Override
public boolean onMenuItemActionCollapse(MenuItem item) {
// TODO Auto-generated method stub tvSHow.setText("==onMenuItemActionCollapse===折叠的====");
return true;
}
});

八, ActionProvider

系统提供者: android:actionProviderClass=”包名.类名”

android:actionProviderClass=”android.widget.ShareActionProvider”

九, ActionBar Tab 导航 通过选项标签来切换Fragment

//获取ActionBar

ActionBar actionBar = getActionBar();

//设置导航模式

actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    ActionBar.Tab tab = actionBar.newTab();
tab.setIcon(android.R.drawable.ic_menu_add);
tab.setText("头条");
tab.setTabListener(this);
actionBar.addTab(tab, true);

15 ActionBar 总结的更多相关文章

  1. 15 ActionBar.Tab 以及保存fragment对象 代码案例

    API 21弃用 values 中 string文件源码: <?xml version="1.0" encoding="utf-8"?> <r ...

  2. 15 Actionbar的显示和隐藏

    ActionBar 显示隐藏方法: 在布局文件中设置 theme主题 <?xml version="1.0" encoding="utf-8"?> ...

  3. Android ActionBar详解

    Android ActionBar详解 分类: Android2014-04-30 15:23 1094人阅读 评论(0) 收藏 举报 androidActionBar   目录(?)[+]   第4 ...

  4. 在 ActionBar 添加刷新按钮

    在以前版本的 Gmail 应用中,ActionBar 上有个刷新菜单,点击一下刷新菜单变成一个转圈的刷新标示动画图片. 之前实现该功能的时候都是使用一个类库 RefreshActionItem来实现的 ...

  5. 【转】【已解决】Android中ActionBar中不显示overflow(就是三个点的那个按钮)--不错

    原文网址:http://www.crifan.com/android_actionbar_three_dot_overflow_not_show/ [问题] 折腾: [记录]继续尝试给Android程 ...

  6. 【Android 应用开发】 ActionBar 基础

    作者 : 万境绝尘 (octopus_truth@163.com) 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/3920439 ...

  7. Android ActionBar使用方法

    对于这ActionBar我想很多人都想了解一下到底是怎么一个使用方法,以及它都存在哪些可操作的和使用的地方.如下图所示:<ignore_js_op> 这便是ActionBar的基本内容.获 ...

  8. .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验

    不知不觉,“.NET平台开源项目速览“系列文章已经15篇了,每一篇都非常受欢迎,可能技术水平不高,但足够入门了.虽然工作很忙,但还是会抽空把自己知道的,已经平时遇到的好的开源项目分享出来.今天就给大家 ...

  9. 15个关于Chrome的开发必备小技巧[译]

    谷歌Chrome,是当前最流行且被众多web开发人员使用的浏览器.最快六周就更新发布一次以及伴随着它不断强大的开发组件,使得Chrome成为你必备的开发工具.例如,在线编辑CSS,console以及d ...

随机推荐

  1. hdu 5893 (树链剖分+合并)

    List wants to travel Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/O ...

  2. hdu 4638 树状数组 区间内连续区间的个数(尽可能长)

    Group Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  3. hdu 5137(2014广州—最短路)

    题意:给你一个图,求删除一个点后使1->n的距离最大 思路: 枚举删除点,然后求最短路,取这些最短路的最大值 #include <iostream> #include <cst ...

  4. [BZOJ]1093 最大半连通子图(ZJOI2007)

    挺有意思的一道图论. Description 一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:∀u,v∈V,满足u→v或v→u,即对于图中任意两点u,v,存在一条u到v ...

  5. git日常使用经验积累

    1 git merge origin/develop 将远程分支合并到本地,一般先执行合并,解决冲突,然后再git commit合入新建的分支,推送到远程分支里面,最后码云上找pl pull requ ...

  6. URI与URL

    为了区分URI与URL,我们要引入URN URI = Universal Resource Identifier 统一资源标志符URL = Universal Resource Locator 统一资 ...

  7. C++中的explicit关键字的用法

    一.explicit作用: 在C++中,explicit关键字用来修饰类的构造函数,被修饰的构造函数的类,不能发生相应的隐式类型转换,只能以显示的方式进行类型转换. 二.explicit使用注意事项: ...

  8. js 数字前面自动补零

    num传入的数字,n需要的字符长度        function PrefixInteger(num, n) {            return (Array(n).join(0) + num) ...

  9. VGG网路结构

    VGG网络的基本结构 如图所示,从A到E网络的深度是逐渐增加的,在A中有11个权重层(8个卷积层,3个全连接层),在E中有19个权重层(16个卷积层,3个全连接层),卷积层的宽度是十分小的,开始时在第 ...

  10. c# datatable增加列并赋值

    DataView dv = DataObj.GetBmfzr("03").Tables[0].DefaultView; dv.Sort = "bmbh"; Da ...