小编lan*_*gio的帖子

计算 DragGesture 的速度

我想提取 DragGesture 的速度以用于弹簧动画的 initialVelocity 参数。我正在尝试创建一个具有响应式弹簧动画的可移动卡片,就像在 Apple Maps 应用程序中找到的那样。

我尝试通过将拖动平移的高度除以拖动手势的总时间来计算速度。

v_abs = abs(Double(drag.translation.height / CGFloat(drag.time.timeIntervalSinceNow)))
Run Code Online (Sandbox Code Playgroud)

问题在于,当用户开始拖动时,他们可能会在轻弹和释放之前减慢拖动速度,这会导致速度非常慢,因为经过了很长时间。如果可能,我只想使用拖动手势最后几毫秒的数据来计算速度。

ios swift swiftui

5
推荐指数
2
解决办法
2027
查看次数

标签 统计

ios ×1

swift ×1

swiftui ×1