1
在我的应用程序中,我需要一些动画,但如果它已经动画,则不需要持续一段时间。但我的问题是它会自动添加一个持续时间。即使我不想要快速动画持续时间(自动?)
在这里你可以看到2个函数,第二个函数没有持续时间,但它确实有一个持续时间(从大概1秒),第一个函数有一个持续时间(它应该有,没关系),但它不是0.6秒,因为如果我将它设置为30,它仍然非常快速地动画。
我做错了什么,在此先感谢!
func openMessage() {
UIView.animate(withDuration: 0.6, delay: 0.0, options: [], animations: {
var t = CATransform3DIdentity;
t = CATransform3DMakeRotation(CGFloat(3 * Float.pi/4), 0, 0, 1)
self.moveableLineLayer.transform = t;
}, completion:{(finished:Bool) in })
}
func openMessageWithoutAnimation() {
self.moveableLineLayer.transform = CATransform3DIdentity
var t = CATransform3DIdentity;
t = CATransform3DMakeRotation(CGFloat(3 * Float.pi/4), 0, 0, 1)
self.moveableLineLayer.transform = t;
}
感谢您的回复,但我该如何使用此参数?找不到将其添加到转换的方法,以及如何在没有动画的情况下进行设置? – MaximVW
我刚刚测试了你的代码,它似乎正常运行。即使在你提到的30秒内设置openMessage()函数也会应用持续时间。也许在调用你的函数时,你会用另一个动画覆盖它。 –
它确实没有重写另一个动画,我只是调用这个方法。这很奇怪 – MaximVW