Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions example/appendix-a/demo10/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Image("niagara-falls")
)
```

里面有很多代码,所以我们将其解压缩
里面有很多代码,让我们逐步解释

- `DragGesture().updating()`代码创建一个新的拖动手势,要求它修改存储在 `dragAmount` 中的值-这就是我们的 `CGSize`。
- 它需要一个带有三个参数的闭包:`value`,`state` 和 `transaction`。
Expand All @@ -39,4 +39,4 @@ Image("niagara-falls")
- `transaction` 参数是一个 `inout` 值,用于存储整个动画上下文,从而为我们提供了一些有关正在发生的情况的信息,例如,这是连续动画还是瞬态动画。连续动画可以通过拖动滑块来产生,而瞬态动画可以通过点击按钮来产生。
- 为了使我们的视图可拖动,我们要做的就是将当前转换直接分配给状态拖动(在这种情况下,它实际上是dragAmount),然后在 `offset()` 修饰符中使用它来移动视图。

请记住,`@GestureState` 的优点之一是,当手势结束时,它会自动将属性的值设置回其初始值。在这种情况下,这意味着我们可以在所需的所有位置上拖动视图,放开后,它将立即回到其原始位置。
请记住,`@GestureState` 的优点之一是,当手势结束时,它会自动将属性的值设置回其初始值。在这种情况下,这意味着我们可以在所需的所有位置上拖动视图,放开后,它将立即回到其原始位置。