抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

在应用中边对边显示内容

可以将 app 配置为在系统栏后面绘制其内容。 status bar 和 navigation bar 统称为 system bar。

app 通过在这些系统栏后面绘制来实现边缘到边缘的布局。 实现边缘到边缘时,app 应执行以下操作:

  • 在导航栏后面绘制可以实现更引人注目、更现代的用户体验。
  • 如果对您的内容和布局有意义(例如全角图像的情况),请在状态栏后面绘制。 为此,请使用 AppBarLayout 等 API,它定义固定到屏幕顶部的应用栏。

在您的应用程序中实现边缘到边缘需要以下步骤:

  1. 全屏布局 app。
  2. 更改 system bar 颜色和透明度。
  3. 处理任何视觉重叠。

全屏布局 app

这是确保 app 从边到边(即使用显示屏的整个宽度和高度进行布局)的主要步骤。

使用 WindowCompat.setDecorFitsSystemWindows(window, false) 将应用程序布局在 system bar 后面,如以下代码示例所示:

1
2
3
4
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
WindowCompat.setDecorFitsSystemWindows(window, false)
}

before:

after:

更改 system bar 颜色

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!-- values-v29/themes.xml -->
<style name="Theme.MyApp">
<item name="android:navigationBarColor">
@android:color/transparent
</item>

<!-- Optional: set to transparent if your app is drawing behind the status bar. -->
<item name="android:statusBarColor">
@android:color/transparent
</item>

<!-- Optional: set the status bar light and content dark. -->
<item name="android:windowLightStatusBar">
true
</item>
</style>

评论