边到边应用通过在系统栏下方绘制界面来充分利用整个屏幕。
要点总结
- 在系统栏下方绘制背景和滚动内容,以实现全面屏体验。
- 避免在系统边衬区下添加点按手势或拖动目标;这些操作会与边到边和手势导航冲突。
在系统栏后方绘制内容
借助边到边功能,您可以在系统栏下方绘制界面,从而提供沉浸式体验。
应用可以通过对边衬区做出响应来解决内容重叠问题。边衬区描述了应用内容需要填充多少内边距,以避免与系统栏或实体设备功能(例如刘海屏)重叠。了解如何在 Compose 和 View 中支持无边框设计和处理边衬区。
在设计边到边用例时,请注意以下类型的边衬区:
- 系统栏边衬区适用于既可点按又不能被系统栏遮挡的界面。
- 系统手势边衬区适用于操作系统使用的手势导航区域,这些区域的优先级高于您的应用。
- 刘海屏边衬区适用于延伸到屏幕显示区域内部的设备区域,例如摄像头刘海屏。
状态栏注意事项
如需了解基本的系统栏设计指南,请参阅 Android 系统栏。以下部分将讨论其他状态栏注意事项。
滚动内容
顶部应用栏应在滚动时收起。了解如何收起 Material 3 TopAppBar。在 Material 3 中,小型顶部应用栏可以收起至状态栏高度,也可以滚动到屏幕外。中型和大型顶部应用栏可以收起为较小的应用栏。请参阅 [Material 指南][10]。
正确做法
正确做法
当界面在状态栏下方滚动时,状态栏应为半透明,这样状态栏图标就不会显得杂乱。为此,请先按照 LazyColumn 或 RecyclerView 文档中的步骤操作,使可滚动界面采用边到边设计。然后,执行以下任一操作,确保系统栏处于半透明状态:
- 在滚动时,依赖 Material 3 TopAppBar 自动保护(如果适用)。
- 创建自定义渐变可组合项,或对 View 使用 GradientProtection。如需详细了解如何在 Compose 中执行此操作,请参阅系统栏保护。
对于自适应布局,请确保为具有不同背景颜色的窗格设置单独的保护。
错误做法
正确做法
同样,抽屉式导航栏也应与应用的其余部分分开保护。
请勿叠加使用状态栏保护措施,例如同时使用 Material 3 TopAppBar 内置保护措施和自定义保护措施。
导航栏注意事项
如需了解基本的导航栏设计指南,请参阅 Android 系统栏。 以下部分包含其他导航栏注意事项。
滚动内容
[BottomAppBar][10] 应在使用 scrollBehavior 参数滚动时收起。
正确做法
正确做法
不过,由于 [NavigationBar]11 没有 scrollBehavior 参数,因此在滚动时应保持可见。
刘海屏
刘海屏可能会影响界面的外观。应用必须处理刘海屏边衬区,以免界面的重要部分在刘海屏下方绘制。
正确做法
错误做法
不过,纯色应用栏背景应绘制到刘海屏中,如下图所示。
确保水平轮播界面绘制到刘海屏中。
了解如何在 Compose 中支持刘海屏。
其他指南
一般来说,背景和分隔线也应采用边到边绘制,而文本和按钮等内容应采用边衬区,以避开系统界面和硬件元素。