【Interface&navigation】系统栏变暗(50)

本课程介绍如何在Android 4.0(API级别14)及更高版本上调暗系统栏(即状态和导航栏)。Android没有提供内置的方法来调暗早期版本的系统栏。

使用此方法时,内容不会调整大小,但系统中的图标会在视觉上退去。一旦用户触摸屏幕的状态栏或导航栏区域,两个条都变得完全可见。这种方法的优点在于杆仍然存在但是它们的细节被遮挡,因此创造了沉浸式体验而不会牺牲对杆的容易接近。

调暗状态和导航栏


您可以使用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);

一旦用户触摸状态或导航栏,标志就会被清除,从而导致条纹不会变暗。标志清除后,如果您想再次调整条形,您的应用需要重置它。

图1显示了一个图库图像,其中导航栏变暗(请注意,Gallery应用程序完全隐藏状态栏;它不会使其变暗)。请注意,导航栏(图像的右侧)上有微弱的白点表示导航控件:
【Interface&navigation】系统栏变暗(50)
图1.调暗的系统条。

图2显示了相同的图库图像,但显示了系统栏:
【Interface&navigation】系统栏变暗(50)
图2.可见系统条

显示状态和导航栏


如果要以编程方式清除设置的标志 setSystemUiVisibility(),可以执行以下操作:

View decorView = getActivity().getWindow().getDecorView();
// Calling setSystemUiVisibility() with a value of 0 clears
// all flags.
decorView.setSystemUiVisibility(0);

联系我

QQ:94297366
微信打赏:https://pan.baidu.com/s/1dSBXk3eFZu3mAMkw3xu9KQ

公众号推荐:

【Interface&navigation】系统栏变暗(50)

猜你喜欢

转载自blog.51cto.com/4789781/2165256