Android设计元素-操作栏
原文链接:http://android.eoe.cn/topic/android_sdk
操作栏 - Action Bar
“操作栏”对于 Android 应用来说是最重要的设计元素。它通常在应用运行的所有时间都呆在屏幕顶部。
操作栏的主要目的是:
- 突出重要的操作 (例如“新建”和“搜索”) 并且可以方便的使用。
- 在应用内提供统一的导航和视图切换体验。
- 较少使用的功能收集到其它操作菜单中,减少界面上的杂乱布局。
- 为您的应用提供一个展示其特点的空间。 如果您是编写 Android 应用的新手,请注意操作栏是需要实现的最重要的设计元素。根据下面的指导设计您的应用,使其和 Android 核心应用达到统一的界面体验。
基本布局
对于大多数应用,操作栏可以分割为 4 个不同的功能区域。
1. 应用图标
应用图标是您应用的标志。在应用图标位置摆放您自己的 logo。注意: 如果当时应用不再顶层界面,那么在图标左边放置一个向左的箭头,表示“向上”按钮,使用户可以回到上一级界面。“向上”按钮的更多细节,请查看 导航 - Navigation 一节。
应用图标以及有和没有“向上”按钮的状态。
2. 视图控制
如果您的应用通过多个不同的视图显示数据,这个区域将允许用户切换视图。可以使用下拉菜单或者标签控件来实现。
如果您的应用没有多个视图,您可以在这里显示不可操作的内容,例如标题或者品牌信息。
3. 操作按钮
显示您应用中最重的操作。如果图标放不下了,就自动移入“其它操作”菜单。
4. 其它操作
将较少被用到的操作放在这个菜单里。
适应旋转和不同的屏幕尺寸
UI 设计最重要的一件事就是让其自动适应旋转和不同的屏幕尺寸。
您可以使用“副操作栏”来做到。您可以在“副操作栏”中放置一些操作,“副操作栏”可以根据需要放在操作栏下面或者屏幕底部。
当设备竖直放置时,副操作栏出现在屏幕底部.
副操作栏的布局
当您要把操作放在多个操作栏中的时候,一般有三个选择:
- 操作栏
- 顶部栏
- 底部栏 如果用户可以导航到应用的上一级屏幕,那么操作栏中至少要放置“向上”按钮。
为了让用户可以快速切换屏幕和视图,在顶部栏中放置标签或者下拉菜单 (spinner)。
当没有足够的空间显示操作图标时,使用底部栏。
上下文操作栏 - Contextual Action Bars
“上下文操作栏” (contextual action bar,CAB) 是一个浮于操作栏上的临时操作栏,用来放置一些特定的子任务。“上下文操作栏”一般在项目选择和文字选择时出现。
浏览器和 Gmail 应用中的上下文操作栏
长按可选择的内容,进入选择模式,显示上下文操作栏。
此时用户可以:
- 通过触摸选择项目。
- 在上下文操作栏中选择操作,并应用于所有已选项目。之后上下文操作栏自动消失。
- 通过导航栏的“返回”按钮关闭上下文操作栏,也可以通过点击上下文操作栏的选择图标关闭它。关闭上下文操作栏的同时要取消所有的选择。 当您让用户长按来选择项目时,需要使用上下文操作栏。您可以控制上下文操作栏中的图标,使用户可以执行不同的操作。
更多信息,请参考 选择 - Selection 一节。
操作栏元素 - Action Bar Elements
标签
“标签 (tabs)”显示了应用提供的不同视图,通过标签可以在它们之间导航。
有两种标签: 滚动标签和固定标签。
滚动标签
“滚动标签”占满整个顶部栏的空间,将当前的视图放在中间。可以在内容区域左右滑动显示滚动标签中的不同视图。
如果您的应用有许多视图,或者视图的数目根据当前的数据而有变化 (例如消息应用中,可以在多个会话中导航)。滚动标签应当始终允许用户通过左右滑动切换视图,无论是在内容区域还是标签区域。
点击查看视频演示:http://developer.android.com/design/media/tabs_scrolly.mp4
固定标签
“固定标签”始终将所有标签显示在屏幕上。当方向改变时可以将固定标签移到顶部栏中。
Android设计元素-操作栏的更多相关文章
- [Android]通知栏与操作栏的高度-State Bar & Navigation Bar
1.通知栏 public static int getStatusBarHeight() { Resources resources = Resources.getSystem(); int reso ...
- Android 关于操作栏 ActionBar 的设计原则【转载+整理】
原文地址 本文内容 操作栏目的 基本布局 适应旋转和不同的屏幕尺寸 副操作栏的布局 操作栏按钮 上下文操作栏 操作栏清单 设计原则就是为你在编写 Android APP 时,尤其是如何安排操作按钮的位 ...
- [Android系列—] 4. 加入操作栏(Action Bar)
前言 操作栏是最重要的设计元素之中的一个,使用它来实现你的应用程序活动.通过提供多种用户界面功能, 使应用程序高速和其它的Andorid应用程序一致, 以便被用户熟悉和接受. 主要功能包括: 1. 标 ...
- Appium学习路—Android定位元素与操作
一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Ins ...
- Android下拉刷新底部操作栏的隐藏问题
最近自己编写下拉刷新的时候,发现了一个问题,就是有一个需求是这样的:要求页面中是一个Tab切换界面,一个界面有底部操作栏,不可下拉刷新,另一个界面没有底部操作栏,但可以下拉刷新. 按照平常的做法,我在 ...
- Appium Android定位元素与操作
文章写得很好,转载备用 一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录 ...
- Android定位元素与操作
一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Ins ...
- App自动化《元素定位方式、元素操作、混合应用、分层设计、代码方式执行Pytest 命令》
坚持原创输出,点击蓝字关注我吧 作者:清菡 博客:oschina.云+社区.知乎等各大平台都有. 目录 一.App 元素定位方式 二.元素操作 三.测试混合应用 四.以代码的方式执行 Pytest 命 ...
- 怎样进行Android UI元素设计
Android UI元素里面包含了许多的内容,比如:该平台由操作系统.中间件.用户界面和应用软件组成,一个应用程序要想受用户喜爱,那么UI可不能差. Android为相似的编程名词引入了一些新的术语, ...
随机推荐
- vue refs v-for 使用注意
当 v-for 用于元素或组件的时候,引用信息将是包含 DOM 节点或组件实例的数组. https://cn.vuejs.org/v2/api/#ref https://www.w3cplus.com ...
- 给本地服务器配置py文件的下载功能
打开以下网址 http://localhost/Myservers/test/weibo.py //本地服务器,下载Myservers目录下的test目录中的weibo.py文件 错误提示: HTTP ...
- java第五节 多线程/多线程的同步
/* 第五讲 多线程 了解进程和线程 在多任务系统中,每个独立执行的程序称为进程,也就是"正在进行的程序",我们现在使用的操作系统一般都是多任务的 即能够同时执行多个应用程序,实际 ...
- windows下卸载mysql5.5,升级为mysql5.7.25
0. 停止mysql的服务 1. 卸载mysql5.5 1.1 使用360或者控制面板卸载mysql,为求干净,我使用的360,结果也需要手动清理 1.2 卸载完成之后到mysql的安装目录删掉该目录 ...
- Linux-内核态与用户态
内核态: CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序 用户态: 只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺 ...
- Mac终端查看sqlite3数据库、表数据等(含sqlite可视化工具下载)
背景: 有时候,我们在用FMDB等库处理iOS数据库时,沙盒里保存的数据库格式为.sqlite3. 那么,我们如何查看这个数据库呢? 其实有两种方法: 1.借助工具 - Sqlite Database ...
- dx11的一些数据结构
功能是什么创建一个设备(device)来代表显示适配器(display adapter)并且创建一个交换链(swap chain)用于渲染 设备device在dx11里是用来干什么的从ID3DX11D ...
- c++ ado 程序终止时崩溃
在_ConnectionPtr析构的时候要将_ConnectionPtr置NULL ADODB::_ConnectionPtr conn;conn.CreateInstance(__uuidof(AD ...
- memcached全面剖析--2.理解memcached的内存存储
下面是<memcached全面剖析>的第二部分. 发表日:2008/7/9 作者:前坂徹(Toru Maesaka) 原文链接:http://gihyo.jp/dev/feature/01 ...
- php 执行命令函数
/** Method to execute a command in the terminal Uses : 1. system 2. passthru 3. exec 4. shell_exec * ...