ActionBar

一, 说明

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

二, ActionBar 提供的功能

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

三, ActionBar 作用

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

四, a

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

五, 分割栏操作

在清单文件中的 或者

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

六, 启动导航图标

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

actionBar.setDisplayHomeAsUpEnabled(true);

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

//actionBar.setHomeButtonEnabled(true);

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

七, Action View 的使用

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

  1. >自定义布局 android:actionLayout="@layout/layout" 添加自定义的View
  2. >展开和折叠:
  3. 在菜单布局中设置: android:showAsAction="collapseActionView"
  4. 可以用按钮设置监听 让菜单项展开和折叠
  5. 展开和折叠可以设置监听:
  6. note:方法里的返回值 设置成true 返回false 不会折叠
  7. //展开和折叠的监听
  8. spinnerItem.setOnActionExpandListener(new OnActionExpandListener() {
  9. @Override
  10. public boolean onMenuItemActionExpand(MenuItem item) {
  11. // TODO Auto-generated method stub
  12. tvSHow.setText("==onMenuItemActionExpand===展开====");
  13. return true;//返回false 不会折叠
  14. }
  15. @Override
  16. public boolean onMenuItemActionCollapse(MenuItem item) {
  17. // TODO Auto-generated method stub
  18. tvSHow.setText("==onMenuItemActionCollapse===折叠的====");
  19. return true;
  20. }
  21. });

八, ActionProvider

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

android:actionProviderClass=”android.widget.ShareActionProvider”

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

//获取ActionBar

ActionBar actionBar = getActionBar();

//设置导航模式

actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

  1. ActionBar.Tab tab = actionBar.newTab();
  2. tab.setIcon(android.R.drawable.ic_menu_add);
  3. tab.setText("头条");
  4. tab.setTabListener(this);
  5. 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. 【BZOJ4003】【JLOI2015】城池攻占

    Description 小铭铭最近获得了一副新的桌游,游戏中需要用 m 个骑士攻占 n 个城池.这 n 个城池用 1 到 n 的整数表示.除 1 号城池外,城池 i 会受到另一座城池 fi 的管辖,其 ...

  2. 【BZOJ3573】【HNOI2014】米特运输

    Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题. D星上有N个城市,我们将其顺序编号为1到N,1号城市 ...

  3. 例10-11 uva11181

    题意:n个人去逛超市,第i个人买东西的概率是pi,,计算每个人实际买了东西的概率 思路: 搜索标处理所以的情况,得出所有概率和all(开始天真的以为是1 - -,就说怎么案例看着怪怪的),用tt[i] ...

  4. python3 条件判断,循环,三元表达式

    一. 条件判断 条件判断的关键字if elif else,具体规则如下: if condition_1: statement_block_1 elif condition_2: statement_b ...

  5. 前端工程师:电信专业转前端是如何拿到阿里、腾讯offer的?

    1.个人情况 ● 211本科 985硕士 电信专业 女生 ● 16年3月开始学习前端 ● 16年7月开始实习,共五家实习经历(不是特别厉害的厂) ● 秋招拿到两个offer(阿里.腾讯).没错只有这两 ...

  6. 【给你一个承诺 - 玩转 AngularJS 的 Promise】

    了解Promise 在谈论Promise之前我们要了解一下一些额外的知识:我们知道JavaScript语言的执行环境是"单线程",所谓单线程,就是一次只能够执行一个任务,如果有多个 ...

  7. Linux阿里云挂载磁盘,并开机自动挂载

    Linux下磁盘挂载 公司新订购阿里云ECS,需要挂载当前的磁盘.暂时没有运维,自己动手挂载磁盘. 具体步骤如下: 1.查看是否已经分配 [root@iZ2ze1tefvghtbgkdur3xfZ / ...

  8. 77. Combinations(medium, backtrack, 重要, 弄了1小时)

    Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...

  9. JAVA 中转义符的理解

    生物信息中有时候会遇到JAVA写的程序,今天阅读源码的时候发现对于正则中的转义符不好理解,后来查资料后终于弄明白了,这里详细说明一下: 字符串的表示有三种方法:1.直接单字符,例如"A&qu ...

  10. ACM Ignatius and the Princess II

    Problem Description Now our hero finds the door to the BEelzebub feng5166. He opens the door and fin ...