Android 中的边对边功能
随着 Android Q 的发布,用户将能够使用他们喜爱的应用程序获得边缘到边缘的体验。这并不意味着您将拥有一个隐藏的导航面板或状态栏将被隐藏。是不是很棒?所以,让我们直接进去吧。
Edge to Edge to App到底是什么?
Edge to Edge 应用程序从上到下占据了整个屏幕高度,包括导航和状态区域。考虑为您的状态和导航面板使用半透明背景以更好地理解它。
让我们看看如何在我们的应用程序中实现这一点。
第 1 步:您的应用应以 Android Q 为目标,因此您的目标版本应如下所示:
targetSdkVersion 'Q'
步骤#2:我们利用它使状态和导航栏透明。
为此,请使用您的活动文件。 Window.setNavigationBarColor() 和 Window.setStatusBarColor() 是改变导航栏颜色的两种方法()
步骤#3:最后,我们必须通知Android系统视图布局足以支持Edge to Edge View。为此,我们将雇用,
最后,我们必须告知Android系统,视图布局足以支持Edge to Edge View。为此,我们将雇用,
view.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_FULL_SCREEN)
- SYSTEM IU FLAG LAYOUT FULL SCREEN:此标志允许您使应用程序从上到下全屏。
- SYSTEM UI FLAG LAYOUT HIDE NAVIGATION:此标志表示导航隐藏在布局中。这会将透明的导航栏放置在应用程序的顶部
- SYSTEM UI FLAG LAYOUT STABLE :此标志对于为程序提供稳定的视图很重要。
这就是创建应用程序以利用边缘到边缘应用程序功能的全部内容。
插图
短语 insets 往往会吓到 Android 开发人员,因为他们之前在 Android Lollipop 时代曾试图在状态栏后面画图。插图指示屏幕的哪些部分(例如导航栏或状态栏)与系统 UI 连接。相交可能只是意味着显示在您的内容上方,但它也可以指示系统运动。我们可以利用插图来尝试消除任何冲突,例如通过将视图从边界移入。
如何获得更多屏幕空间?
我们可能会通过切换到系统导航的手势范例来为您的应用程序提供额外的屏幕空间。这使应用程序能够为其消费者提供更身临其境的体验。在大多数设备上,用户将能够选择他们喜欢的导航模式。目前的三键导航方式(返回、主页和最近)将被保留。对于首次搭载 Android 10 或更高版本的所有智能手机来说,它都是必需的。
让您的应用全屏显示
在您的应用程序中添加以下代码以使其全屏显示,这只是应该进入 onCreate() 方法的初始声明
Kotlin
// Your onCreateMethod() in Kotlin
...
super.onCreate(savedInstanceState)
WindowCompat.setDecorFitsSystemWindows(window, false)
...
Java
// Your onCreateMethod() in Java
...
WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
...
GeekTip: To deactivate automatic content protection on Android 10 (API level 29) or higher, set android:enforceNavigationBarContrast, android:enforceStatusBarContrast, or both in your theme to false.
大弯曲显示器的变化
可折叠小工具带来了一些新颖的体验和应用。我们在 Android Q 中实施了多项改进,以帮助您的应用利用此设备和其他大屏幕设备,包括修改 onResume 和 onPause 以启用多重恢复并在您的应用受到关注时发出警报。我们还修改了 resizable Activity manifest 参数的行为,让您可以自定义应用在可折叠和大显示器上的显示方式。
结论
2021 年移动创新比以往任何时候都更加强大,新技术从 5G 到无边框显示器甚至可折叠屏幕,让您的应用程序支持无边框是扩大用户群的绝佳方式!