原文链接:http://android.eoe.cn/topic/android_sdk

操作栏 - Action Bar

“操作栏”对于 Android 应用来说是最重要的设计元素。它通常在应用运行的所有时间都呆在屏幕顶部。

操作栏的主要目的是:

  • 突出重要的操作 (例如“新建”和“搜索”) 并且可以方便的使用。
  • 在应用内提供统一的导航和视图切换体验。
  • 较少使用的功能收集到其它操作菜单中,减少界面上的杂乱布局。
  • 为您的应用提供一个展示其特点的空间。 如果您是编写 Android 应用的新手,请注意操作栏是需要实现的最重要的设计元素。根据下面的指导设计您的应用,使其和 Android 核心应用达到统一的界面体验。

基本布局

对于大多数应用,操作栏可以分割为 4 个不同的功能区域。

1. 应用图标

应用图标是您应用的标志。在应用图标位置摆放您自己的 logo。注意: 如果当时应用不再顶层界面,那么在图标左边放置一个向左的箭头,表示“向上”按钮,使用户可以回到上一级界面。“向上”按钮的更多细节,请查看 导航 - Navigation 一节。

应用图标以及有和没有“向上”按钮的状态。

2. 视图控制

如果您的应用通过多个不同的视图显示数据,这个区域将允许用户切换视图。可以使用下拉菜单或者标签控件来实现。

如果您的应用没有多个视图,您可以在这里显示不可操作的内容,例如标题或者品牌信息。

3. 操作按钮

显示您应用中最重的操作。如果图标放不下了,就自动移入“其它操作”菜单。

4. 其它操作

将较少被用到的操作放在这个菜单里。

适应旋转和不同的屏幕尺寸

UI 设计最重要的一件事就是让其自动适应旋转和不同的屏幕尺寸。

您可以使用“副操作栏”来做到。您可以在“副操作栏”中放置一些操作,“副操作栏”可以根据需要放在操作栏下面或者屏幕底部。

当设备竖直放置时,副操作栏出现在屏幕底部.

副操作栏的布局

当您要把操作放在多个操作栏中的时候,一般有三个选择:

  1. 操作栏
  2. 顶部栏
  3. 底部栏 如果用户可以导航到应用的上一级屏幕,那么操作栏中至少要放置“向上”按钮。

为了让用户可以快速切换屏幕和视图,在顶部栏中放置标签或者下拉菜单 (spinner)。

当没有足够的空间显示操作图标时,使用底部栏。

上下文操作栏 - Contextual Action Bars

“上下文操作栏” (contextual action bar,CAB) 是一个浮于操作栏上的临时操作栏,用来放置一些特定的子任务。“上下文操作栏”一般在项目选择和文字选择时出现。

浏览器和 Gmail 应用中的上下文操作栏

长按可选择的内容,进入选择模式,显示上下文操作栏。

此时用户可以:

  • 通过触摸选择项目。
  • 在上下文操作栏中选择操作,并应用于所有已选项目。之后上下文操作栏自动消失。
  • 通过导航栏的“返回”按钮关闭上下文操作栏,也可以通过点击上下文操作栏的选择图标关闭它。关闭上下文操作栏的同时要取消所有的选择。 当您让用户长按来选择项目时,需要使用上下文操作栏。您可以控制上下文操作栏中的图标,使用户可以执行不同的操作。

更多信息,请参考 选择 - Selection 一节。

操作栏元素 - Action Bar Elements

标签

“标签 (tabs)”显示了应用提供的不同视图,通过标签可以在它们之间导航。

有两种标签: 滚动标签和固定标签。

滚动标签

“滚动标签”占满整个顶部栏的空间,将当前的视图放在中间。可以在内容区域左右滑动显示滚动标签中的不同视图。

如果您的应用有许多视图,或者视图的数目根据当前的数据而有变化 (例如消息应用中,可以在多个会话中导航)。滚动标签应当始终允许用户通过左右滑动切换视图,无论是在内容区域还是标签区域。

点击查看视频演示:http://developer.android.com/design/media/tabs_scrolly.mp4

固定标签

“固定标签”始终将所有标签显示在屏幕上。当方向改变时可以将固定标签移到顶部栏中。

Android设计元素-操作栏的更多相关文章

  1. [Android]通知栏与操作栏的高度-State Bar & Navigation Bar

    1.通知栏 public static int getStatusBarHeight() { Resources resources = Resources.getSystem(); int reso ...

  2. Android 关于操作栏 ActionBar 的设计原则【转载+整理】

    原文地址 本文内容 操作栏目的 基本布局 适应旋转和不同的屏幕尺寸 副操作栏的布局 操作栏按钮 上下文操作栏 操作栏清单 设计原则就是为你在编写 Android APP 时,尤其是如何安排操作按钮的位 ...

  3. [Android系列—] 4. 加入操作栏(Action Bar)

    前言 操作栏是最重要的设计元素之中的一个,使用它来实现你的应用程序活动.通过提供多种用户界面功能, 使应用程序高速和其它的Andorid应用程序一致, 以便被用户熟悉和接受. 主要功能包括: 1. 标 ...

  4. Appium学习路—Android定位元素与操作

    一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Ins ...

  5. Android下拉刷新底部操作栏的隐藏问题

    最近自己编写下拉刷新的时候,发现了一个问题,就是有一个需求是这样的:要求页面中是一个Tab切换界面,一个界面有底部操作栏,不可下拉刷新,另一个界面没有底部操作栏,但可以下拉刷新. 按照平常的做法,我在 ...

  6. Appium Android定位元素与操作

    文章写得很好,转载备用 一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录 ...

  7. Android定位元素与操作

    一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Ins ...

  8. App自动化《元素定位方式、元素操作、混合应用、分层设计、代码方式执行Pytest 命令》

    坚持原创输出,点击蓝字关注我吧 作者:清菡 博客:oschina.云+社区.知乎等各大平台都有. 目录 一.App 元素定位方式 二.元素操作 三.测试混合应用 四.以代码的方式执行 Pytest 命 ...

  9. 怎样进行Android UI元素设计

    Android UI元素里面包含了许多的内容,比如:该平台由操作系统.中间件.用户界面和应用软件组成,一个应用程序要想受用户喜爱,那么UI可不能差. Android为相似的编程名词引入了一些新的术语, ...

随机推荐

  1. HTML注释标签

      CreateTime--2016年11月4日08:46:25Author:Marydon参考链接--http://www.cnblogs.com/KeepMovingblog/archive/20 ...

  2. 编程填空:第i位取反

    总时间限制: 1000ms 内存限制: 1024kB描述写出函数中缺失的部分,使得函数返回值为一个整数,该整数的第i位是n的第i位取反,其余位和n相同 请使用[一行代码]补全bitManipulati ...

  3. Centos7新装配置, 并使用openvpn client长连接远程备份

    1. 修改本机hostname // 查看本机hostname hostnamectl //永久性的修改主机名称, 修改完后新开的terminal中立刻生效. 也可以直接修改 /etc/hostnam ...

  4. 下载完整版Chrome离线安装文件的官方地址

    只在自己账号下安装Download Google Chrome Standalone Offline Installer (32-bit)  http://www.google.com/chrome/ ...

  5. (原)ubuntnu中anaconda的g++提示crtbeginS.o:unrecognized relocation

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6950263.html 自从使用anaconda后,方便是方便了,也遇到了很多蛋疼的问题. 这次使用an ...

  6. SqlServer安装时的选项说明

    转自:https://blog.csdn.net/m0_37154839/article/details/80233446 看看组件的功能说明吧 服务器组件 说明 SQL Server 数据库引擎 S ...

  7. Debug 路漫漫-06

    FSBPR 迭代一轮就停止???…… 循环条件没有问题.. 达到收敛条件了?——参数变化小于1e-4…? deltaU =0 —— U没有更新?——incU < 0 —— 取消动量(前半部分即可 ...

  8. JavaScript 表单验证入门

    JavaScript 表单验证 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证. 被 JavaScript 验证的这些典型的表单数据有: 用户是否已填写表单 ...

  9. linux线程学习

    按照书上写的,不知道为什么有问题: //已解决,参考最新的blog,哈哈 #include <stdlib.h> #include <pthread.h> #include & ...

  10. build high performance server 转载

    http://blog.ci123.com/wobushizhanghua/entry/246311 先后查看了haproxy,l7sw和lighttpd的 相关源码,无一例外,他们一致认为多路复用是 ...