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