Android Action Bar简介
Android Action Bar简介
Design: Action Bar
Action Bar是在屏幕顶端的一部分内容,通常在整个app进行中都保持存在。
它提供了几个关键的功能:
1.使得重要的动作明显且可以通过可预测的方式获得(比如New和Search)。
2.提供了app中一致的导航和View转换。
3.通过提供action流,减少了杂乱,尤其是对很少使用的动作来说。
4.为你的app内容提供了足够多的空间。
Action Bar区域
Action Bar可以分为四个不同的功能区域:

1. App icon
可以放一些logo或者牌子之类的图标。
但是如果你的app当前不在顶层屏幕,记得在logo左边放上Up指示图标(可以是一个返回箭头之类的),这样用户可以向上一层返回。
更多可参见 Navigation。
2. View control
如果你的app在不同的view中展示数据,action bar中的这一部分可以允许用户进行view的切换。
比如drop-down的菜单或者tab控制。
更多可参见App Structure 。
如果app不包含View切换,action bar的这一部分也可以用来展示非交互的内容,比如title或较长的branding信息。
3. Action buttons
Action Bar的这一部分用来展示一些app中比较重要的动作。
Action Bar中放不下的动作会自动移动到action overflow(4)中去。长按一个icon来看动作的名字。
动作应该有排序,FIT scheme可以用来对动作进行优先级划分。
Frequent, Important, Typical的动作应该被放在action bar里,如果都不满足,则应该放入action overflow中。
4. Action overflow
把不常用的动作放在action overflow中来。
Action bar上的action overflow图标仅仅在没有硬件菜单键的时候才显示,如果有菜单键,用户点击菜单键将会显示action overflow。
Action Bar的适配
为适配不同的设备,考虑不同的屏幕方向和屏幕尺寸,可以分割action bar。
分割的时候action bar的可考虑位置主要有三个:
1.Main content bar
2.Top bar
3.Bottom bar

如果允许用户向上层返回,即Up返回,那么Main content bar最少要提供向上返回的符号。
Top bar中可以用tab或者spinner让用户在View之间快速地进行切换。
Bottom bar通常用来展示动作,即action和action overflow。
Action bar中可以容纳的按钮个数(即action bar的容量)遵循一定的规律:
Main content bar中的action buttons不会占超过50%的宽度。
但底部的bar可以被全部占据。
屏幕的宽度(以dp为单位)决定了可以容纳的项目数目:
360dp以下:2个icon。
360-499 dp = 3 icons
500-599 dp = 4 icons
600 dp and larger = 5 icons
Action Bar的实现
Action Bar的ActionBar API是Android 3.0(API Level 11)才引进的。但是可以通过Support Library 支持2.1及以上版本。
具体见:
http://developer.android.com/guide/topics/ui/actionbar.html
参考资料
Design: Action Bar:
http://developer.android.com/design/patterns/actionbar.html
Develop: Action Bar:
http://developer.android.com/guide/topics/ui/actionbar.html
Reference: Action Bar:
http://developer.android.com/reference/android/app/ActionBar.html
资源下载:
Download the Action Bar Icon Pack
Android Action Bar简介的更多相关文章
- Android UI开发神兵利器之Android Action Bar Style Generator
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/x359981514/article/details/26283129 ActionBar是3.0后的 ...
- Android UI法宝的发展Android Action Bar Style Generator
ActionBar它是3.0经UI设计规格.同时它是Google设计风格强烈推荐,如何做一个高速设计的眼睛ActionBar之.进一步,我们设置了阶段为一个入眼ActionBar模板吧,然后,Andr ...
- Android Action Bar 详解篇 .
作者原创,转载请标明出处:http://blog.csdn.net/yuxlong2010 作为Android 3.0之后引入的新的对象,ActionBar可以说是一个方便快捷的导航神器.它可以作为活 ...
- 【Android Developers Training】 8. 定义Action Bar风格
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- Android训练课程(Android Training) - 添加活动栏(使用action bar)
2014-10-28 张云飞VIR 翻译自:https://developer.android.com/training/basics/actionbar/index.html 添加活动栏(Addin ...
- Android设计和开发系列第二篇:Action Bar(Develop—Training)
Adding the Action Bar GET STARTED DEPENDENCIES AND PREREQUISITES Android 2.1 or higher YOU SHOULD AL ...
- Contextual Action bar(2) 简介,启动,各函数介绍
一.Context Action Bar简介 它是一个ActionBar,有各种操作项,但它不是始终显示的ActionBar,它需要上下文才显示.样式如下: 二.Context Action Bar的 ...
- Android官方文档翻译 十 2.3Styling the Action Bar
Styling the Action Bar 设计菜单栏的样式 This lesson teaches you to 这节课教给你 Use an Android Theme 使用一个Android主题 ...
- Android 自定义title 之Action Bar
Android 自定义title 之Action Bar 2014-06-29 飞鹰飞龙... 摘自 博客园 阅 10519 转 25 转藏到我的图书馆 微信分享: Action Ba ...
随机推荐
- 【Android】Camera 使用浅析
Camera的简单使用浅析 由于最近工作上用到android.hardware.Camera这个类,于是简单的学习了一些基本用法. 首先注意:Camera这个类在API21以后就不推荐使用了,官方提供 ...
- mysql判断一条记录是否存在,如果存在,则更新此语句,如果不存在,则插入
前言,在我们的业务逻辑中,很有可能会遇到这样的情况. 1.我要更新一条记录的值. 2.但是我不确定这条记录存不存在??? 3.那如果存在?我就更新,如果不存在,我就插入! 那么如果这样,一般情况下,我 ...
- Android学习笔记之短信验证码的获取和读取
PS:最近很多事情都拖拖拉拉的..都什么办事效率啊!!! 还得吐槽一下移动运营商,验证码超过五次的时候,直接把我的手机号封闭.真是受够了. 学习笔记: 1.Android之如何获取短信验证码. 2.如 ...
- Java之HashMap在多线程情况下导致死循环的问题
PS:不得不说Java编程思想这本书是真心强大.. 学习内容: 1.HashMap<K,V>在多线程的情况下出现的死循环现象 当初学Java的时候只是知道HashMap<K,V& ...
- 基于 CSS3 Media Queries 的 HTML5 应用
先来介绍下 media,确切的说应该是 CSS media queries(CSS 媒体查询),媒体查询包含了一个媒体类型和至少一个使用如宽度.高度和颜色等媒体属性来限制样式表范围的表达式.CSS3 ...
- SQL--联合查询【Union】
集合运算符是针对两个集合操作的,两个集合必须有相同的列数:列具有相同的数据类型(至少能够隐式转换的);最终输出的集合的列名是,由第一个集合的列名来确定的(可以用来连接多个结果). 注意:联合[Unio ...
- C++ - unordered_map 源码解析
转自:http://zrj.me/archives/1248,转载请注明.(分析得不错) 主要尝试回答下面几个问题: 一般情况下,使用 hash 结构,需要有桶的概念,那么 unordered_map ...
- Objective-C语法简记
开始学习iPhone开发了,虽然现在已经有了Swift,但我还是老老实实地学习Objective-C,鄙人入门的程序语言是C,后来学习了C#和Java,现在来学Objective-C,这篇只是一些很简 ...
- mysql中变量赋值
http://www.cnblogs.com/qixuejia/archive/2010/12/21/1913203.html sql server中变量要先申明后赋值: 局部变量用一个@标识,全局变 ...
- AngularJS例子 ng-repeat遍历输出 通过js的splice方法删除当前行
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...