有没有办法在 SwiftUI 中的动画之后执行函数?
Is there a way to execute a function after an animation in SwiftUI?
在 UIKit 中你可以这样做:
UIView.animate(withDuration: TimeInterval, animations: {
//animation
}) { (Bool) in
//code which will be executed after the animation
}
SwiftUI 中是否有类似的东西,或者您能想到替代品吗?
此处描述了一种方法:
https://www.avanderlee.com/swiftui/withanimation-completion-callback/
该方法需要使用 AnimatableModifier
协议的自定义实现。实施起来并非完全微不足道,但它似乎确实解决了问题。
在 UIKit 中你可以这样做:
UIView.animate(withDuration: TimeInterval, animations: {
//animation
}) { (Bool) in
//code which will be executed after the animation
}
SwiftUI 中是否有类似的东西,或者您能想到替代品吗?
此处描述了一种方法:
https://www.avanderlee.com/swiftui/withanimation-completion-callback/
该方法需要使用 AnimatableModifier
协议的自定义实现。实施起来并非完全微不足道,但它似乎确实解决了问题。