我已經看了四周,但我一直未能找到這個簡單的問題的答案。有沒有辦法讓Swift CABasicAnimation動畫的效果永久化? (意思是當動畫結束後,視圖不會重置到它在動畫開始之前的狀態。)迅速使動畫效果永久
0
A
回答
1
有沒有一種方法,使雨燕CABasicAnimation動畫永久的效果
絕對如此。只需將您正在動畫的屬性設置爲動畫結束時的值即可。您可以在創建和添加動畫的同時執行此操作。 (您可能會想打開隱動畫關閉當你做到這一點,這樣你就不會動畫這個改變。)
例子從我自己的代碼(我動畫的transform
一個名爲arrow
使其旋轉層):
let startValue = arrow.transform
let endValue = CATransform3DRotate(
startValue, CGFloat(M_PI)/4.0, 0, 0, 1)
// change the layer, without implicit animation
// THIS IS WHAT YOU ARE ASKING ABOUT
CATransaction.setDisableActions(true)
arrow.transform = endValue
// construct the explicit animation
let anim = CABasicAnimation(keyPath:"transform")
anim.duration = 0.8
anim.fromValue = NSValue(CATransform3D:startValue)
anim.toValue = NSValue(CATransform3D:endValue)
// ask for the explicit animation
arrow.addAnimation(anim, forKey:nil)
+0
有關此代碼背後原理的完整討論,請參閱我的書:http://www.apeth.com/iOS書/ ch17.html#_using_a_cabasicanimation – matt
相關問題
- 1. Android永久動畫
- 2. UIView.animateWithDuration迅速循環動畫
- 3. 迅速UIView.animate跳過動畫
- 4. addSubview破壞動畫迅速
- 5. 滑出動畫在迅速
- 6. 畫動畫圈中迅速3
- 7. 迅速使緩存無效
- 8. 如果迅速
- 9. 關於速度的動畫效果
- 10. 未能動畫在迅速3
- 11. 添加動畫序列中迅速
- 12. 迅速停止360度的動畫
- 13. 動畫效果
- 14. Jquery使用動畫效果動畫效果的Flash動畫文本
- 15. 迅速IOS數據持久性的UIImage
- 16. 使用迅速
- 17. 迅速動態UIAlertController
- 18. jQuery的動畫動畫效果後生效,之後動畫效果
- 19. 301永久移動
- 20. 永久SensorEventListener震動
- 21. 蘋果迅速 - 從可變
- 22. 動畫效果ngRepeat
- 23. iOS動畫效果
- 24. Android動畫效果
- 25. Android。動畫效果
- 26. uiimage動畫效果
- 27. 動畫jQuery效果
- 28. 爲angular2動畫效果應用動畫效果
- 29. Android滑動效果動畫
- 30. CSS動畫(顫動效果)
你應該fillModes https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/CAMediaTiming_protocol/index.html#/看看/ apple_ref/doc/constant_group/Fill_Modes –