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简介的更多相关文章

  1. Android UI开发神兵利器之Android Action Bar Style Generator

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/x359981514/article/details/26283129 ActionBar是3.0后的 ...

  2. Android UI法宝的发展Android Action Bar Style Generator

    ActionBar它是3.0经UI设计规格.同时它是Google设计风格强烈推荐,如何做一个高速设计的眼睛ActionBar之.进一步,我们设置了阶段为一个入眼ActionBar模板吧,然后,Andr ...

  3. Android Action Bar 详解篇 .

    作者原创,转载请标明出处:http://blog.csdn.net/yuxlong2010 作为Android 3.0之后引入的新的对象,ActionBar可以说是一个方便快捷的导航神器.它可以作为活 ...

  4. 【Android Developers Training】 8. 定义Action Bar风格

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  5. Android训练课程(Android Training) - 添加活动栏(使用action bar)

    2014-10-28 张云飞VIR 翻译自:https://developer.android.com/training/basics/actionbar/index.html 添加活动栏(Addin ...

  6. Android设计和开发系列第二篇:Action Bar(Develop—Training)

    Adding the Action Bar GET STARTED DEPENDENCIES AND PREREQUISITES Android 2.1 or higher YOU SHOULD AL ...

  7. Contextual Action bar(2) 简介,启动,各函数介绍

    一.Context Action Bar简介 它是一个ActionBar,有各种操作项,但它不是始终显示的ActionBar,它需要上下文才显示.样式如下: 二.Context Action Bar的 ...

  8. Android官方文档翻译 十 2.3Styling the Action Bar

    Styling the Action Bar 设计菜单栏的样式 This lesson teaches you to 这节课教给你 Use an Android Theme 使用一个Android主题 ...

  9. Android 自定义title 之Action Bar

    Android 自定义title 之Action Bar 2014-06-29  飞鹰飞龙...  摘自 博客园  阅 10519  转 25 转藏到我的图书馆   微信分享:   Action Ba ...

随机推荐

  1. 【Android】Camera 使用浅析

    Camera的简单使用浅析 由于最近工作上用到android.hardware.Camera这个类,于是简单的学习了一些基本用法. 首先注意:Camera这个类在API21以后就不推荐使用了,官方提供 ...

  2. mysql判断一条记录是否存在,如果存在,则更新此语句,如果不存在,则插入

    前言,在我们的业务逻辑中,很有可能会遇到这样的情况. 1.我要更新一条记录的值. 2.但是我不确定这条记录存不存在??? 3.那如果存在?我就更新,如果不存在,我就插入! 那么如果这样,一般情况下,我 ...

  3. Android学习笔记之短信验证码的获取和读取

    PS:最近很多事情都拖拖拉拉的..都什么办事效率啊!!! 还得吐槽一下移动运营商,验证码超过五次的时候,直接把我的手机号封闭.真是受够了. 学习笔记: 1.Android之如何获取短信验证码. 2.如 ...

  4. Java之HashMap在多线程情况下导致死循环的问题

    PS:不得不说Java编程思想这本书是真心强大.. 学习内容: 1.HashMap<K,V>在多线程的情况下出现的死循环现象   当初学Java的时候只是知道HashMap<K,V& ...

  5. 基于 CSS3 Media Queries 的 HTML5 应用

    先来介绍下 media,确切的说应该是 CSS media queries(CSS 媒体查询),媒体查询包含了一个媒体类型和至少一个使用如宽度.高度和颜色等媒体属性来限制样式表范围的表达式.CSS3 ...

  6. SQL--联合查询【Union】

    集合运算符是针对两个集合操作的,两个集合必须有相同的列数:列具有相同的数据类型(至少能够隐式转换的);最终输出的集合的列名是,由第一个集合的列名来确定的(可以用来连接多个结果). 注意:联合[Unio ...

  7. C++ - unordered_map 源码解析

    转自:http://zrj.me/archives/1248,转载请注明.(分析得不错) 主要尝试回答下面几个问题: 一般情况下,使用 hash 结构,需要有桶的概念,那么 unordered_map ...

  8. Objective-C语法简记

    开始学习iPhone开发了,虽然现在已经有了Swift,但我还是老老实实地学习Objective-C,鄙人入门的程序语言是C,后来学习了C#和Java,现在来学Objective-C,这篇只是一些很简 ...

  9. mysql中变量赋值

    http://www.cnblogs.com/qixuejia/archive/2010/12/21/1913203.html sql server中变量要先申明后赋值: 局部变量用一个@标识,全局变 ...

  10. AngularJS例子 ng-repeat遍历输出 通过js的splice方法删除当前行

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...