Android官方开发文档Training系列课程中文版:管理系统UI之变暗系统条

简介: 原文地址:http://android.xsoftlab.net/training/system-ui/index.html引言系统条(System Bars)是屏幕上的一块显示区域,专门用来显示通知,设备的通讯状态以及设备的导向。

原文地址:http://android.xsoftlab.net/training/system-ui/index.html

引言

系统条(System Bars)是屏幕上的一块显示区域,专门用来显示通知,设备的通讯状态以及设备的导向。典型的System Bars与APP同时显示在屏幕上。APP展示了具体的内容,比如电影或者照片,这时可以临时性的将System Bars的图标变暗,以便减少不必要的干扰,或者临时性的隐藏System Bars,以便进入一种身临其境的状态。

如果你对Android Design Guide很熟悉,那么应该知道将APP设计为符合标准的Android UI是很重要的一点。在修改System Bars之前,你应当仔细考虑用户所需要的及所期望的,因为这会给用户一种标准的方法来操作设备及查看设备的状态(PS:说白了就是可以很快的上手)。

这节课将会讨论如何在不同的Android版本中变暗或隐藏System Bars来创造身临其境的用户体验,并且保留快速访问System Bars的方法。

使System Bars变暗

这节课将会描述如何使Android 4.0以上的系统的System Bars变暗。Android对早期的版本并没有提供可以使System Bars变暗的方法。

当你使用这项方法时,内容区域并不会重新调整尺寸,但是System Bars上图标在视觉上确实是收回去了。无论用户是点击了状态条区域还是导航条区域,这两个条都会完全显示出来。这种方法的优势在于Bar还在,但是它们的详细信息都被模糊了,因此利用Bar可以很轻松的创建一个没有任何代价损失的身临其境的体验。

使状态导航条变暗

你可以在Android 4.0及以上的版本中通过SYSTEM_UI_FLAG_LOW_PROFILE标志来使状态条及通知条变暗:

// This example uses decor view, but you can use any visible view.
View decorView = getActivity().getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_LOW_PROFILE;
decorView.setSystemUiVisibility(uiOptions);

在用户触碰到状态导航条时,这个标志会被清除,这会使状态导航条变亮。一旦这个标志被清除,如果你想再次使导航条变暗的话,还需要重新设置这个标志。

下图展示了导航条变暗后的展示效果(注意这里只是将状态条隐藏了,并不是使它变暗了)。注意导航条(图像的右边)在这里呈浅白色的点:

下图展示了相同的图像,只是系统条这时完全被展示了出来:

使状态导航条变亮

如果你想清除这个标志,你可以这么做:

View decorView = getActivity().getWindow().getDecorView();
// Calling setSystemUiVisibility() with a value of 0 clears
// all flags.
decorView.setSystemUiVisibility(0);
目录
相关文章
|
3天前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
16 1
|
3天前
|
Android开发
Android构建系统:Android.mk(2)函数详解
Android构建系统:Android.mk(2)函数详解
12 1
|
3天前
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
35 1
|
3天前
|
移动开发 Java Unix
Android系统 自动加载自定义JAR文件
Android系统 自动加载自定义JAR文件
21 1
|
3天前
|
Shell Android开发 开发者
Android系统 自定义动态修改init.custom.rc
Android系统 自定义动态修改init.custom.rc
23 0
|
3天前
|
测试技术 Android开发 开发者
RK3568 Android系统客制化动态替换ro任意属性
RK3568 Android系统客制化动态替换ro任意属性
24 1
|
3天前
|
存储 Linux Android开发
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
18 0
|
3天前
|
存储 缓存 安全
Android系统 应用存储路径与权限
Android系统 应用存储路径与权限
6 0
Android系统 应用存储路径与权限
|
3天前
|
存储 开发工具 Android开发
Android系统 权限组管理和兼容性
Android系统 权限组管理和兼容性
14 0
|
3天前
|
存储 安全 Android开发
Android系统 自定义系统和应用权限
Android系统 自定义系统和应用权限
19 0