我在这里检查了所有现有的类似问题,但找不到解决方案。
我正在尝试执行以下属性动画,该动画应该自动反转并重复直到事件发生,然后我将停止它:
lookupButtonAnimator =
UIViewPropertyAnimator.runningPropertyAnimator(withDuration: 0.6,
delay: 0,
options: [.curveEaseIn, .autoreverse, .repeat]) {
self.lookupButton.transform = CGAffineTransform(scaleX: 1.2, y: 1.2)
}
编译器会忽略.autoreverse
and.repeat
选项,并且只执行一次动画。
不过,对我有用的是在动画闭包中添加以下两行:
UIView.setAnimationRepeatCount(Float.infinity)
UIView.setAnimationRepeatAutoreverses(true)
然而,Xcode 不喜欢这样,并提出两个警告:
'setAnimationRepeatCount' 在 iOS 13.0 中已弃用:改用基于块的动画 API 'setAnimationRepeatAutoreverses' 在 iOS 13.0 中已弃用:改用基于块的动画 API
是否有任何可能的方法来自动反转和重复属性动画而不必使用已弃用的代码?
请不要建议使用UIView.animate(..)
代替UIViewPropertyAnimator
。