滑动关闭

滑动关闭动画用于传达用户导航到上一页时的过渡效果。

滑动关闭的动画细节类似于 RSB 按压。您的手指控制动画的进度,最多可达 50%。

应用视图上还有一个与关闭手势关联的附加动画。应用视图上显示的移动量与手指需要移动的距离并不完全相同。应用视图绝不应离开屏幕边缘,而是显示出类似挤压的效果并带有一些阻力。

实现

来自导航库SwipeDismissableNavHost 默认提供滑动关闭导航手势。

如果您未使用导航库,仍然可以直接使用 BasicSwipeToDismissBox 来支持此全屏导航手势。

设计

在设计滑动关闭操作时,请记住以下两个原则

屏幕边缘

考虑其他可滑动的界面元素,例如分页的应用视图。当可以进行滑动关闭时,请预留屏幕边缘 20% 的区域来触发该动作。

当内容水平可滚动时,请参阅来自 Wear OS 版 Compose Material 代码库的此示例,了解边缘滑动的示例。

返回或停留在应用视图的阈值

如果用户的手指已拖动超过屏幕宽度的 50%,应用应触发其余的滑回动画。如果少于 50%,应用应快速回到完整的应用视图。

如果手势速度快,则忽略 50% 的阈值规则并滑回。