滑动关闭动画用于传达用户导航到上一页时的过渡效果。
滑动关闭的动画细节类似于 RSB 按压。您的手指控制动画的进度,最多可达 50%。
应用视图上还有一个与关闭手势关联的附加动画。应用视图上显示的移动量与手指需要移动的距离并不完全相同。应用视图绝不应离开屏幕边缘,而是显示出类似挤压的效果并带有一些阻力。
实现
来自导航库的 SwipeDismissableNavHost
默认提供滑动关闭导航手势。
如果您未使用导航库,仍然可以直接使用 BasicSwipeToDismissBox
来支持此全屏导航手势。
设计
在设计滑动关闭操作时,请记住以下两个原则
屏幕边缘
考虑其他可滑动的界面元素,例如分页的应用视图。当可以进行滑动关闭时,请预留屏幕边缘 20% 的区域来触发该动作。
当内容水平可滚动时,请参阅来自 Wear OS 版 Compose Material 代码库的此示例,了解边缘滑动的示例。
返回或停留在应用视图的阈值
如果用户的手指已拖动超过屏幕宽度的 50%,应用应触发其余的滑回动画。如果少于 50%,应用应快速回到完整的应用视图。
如果手势速度快,则忽略 50% 的阈值规则并滑回。