【发布时间】:2019-07-29 11:17:18
【问题描述】:
SwiftUI 动画通常由状态驱动,这很好,但有时您确实希望触发临时(通常是可逆的)动画以响应某些事件。例如,我想在点击按钮时临时增加按钮的大小(释放按钮时大小的增加和减少都应该作为单个动画发生),但我无法弄清楚这一点.
我认为它可以与转换一起被破解,但不是很好。另外,如果我制作一个使用自动反转的动画,它会增加大小,减小它然后跳回到增加的状态。
【问题讨论】:
-
你能用这样的东西吗? (它来自 beta 1 或 2,所以它可能不再工作了。)alejandromp.com/blog/2019/06/22/swiftui-reusable-button-style
-
感谢您提供有趣的链接,但不幸的是,这与 kontiki 的解决方案存在相同的问题:它依赖于状态,在按下状态下按钮有一个大小,在非按下状态下它有正常大小。我需要动画在触发时自动向前播放,然后自动向后播放。