我有一個CABasicAnimation
,並希望延遲後啓動它。在UIKit中,我可以指定延遲。 CAMediaTiming
協議有一個timeOffset
屬性,但我看不到效果。我的下一個嘗試是使用GCD來延遲它,但它感覺像是過度殺傷。如何延遲CABasicAnimation?
回答
您是不是應該使用[CAMediaTiming beginTime]
屬性(reference)?
請參閱在Core Animation Programming Guide中定製動畫的時機。
CABasicAnimation *animation;
animation.beginTime = CACurrentMediaTime() + 0.3; //0.3 seconds
只要記住它是'CACurrentMediaTime()+ yourDelay' – 2013-02-27 17:01:44
我無法將其用於AVVideoCompositionCoreAnimationTool。唯一可行的是AVCoreAnimationBeginTimeAtZero。我想爲我的動畫做一些延遲... – Nil 2014-11-13 05:24:43
@grisleyB,我面臨的同樣的問題。你有沒有找到什麼? – 2015-06-24 13:01:23
在雨燕3.0:
func animateYourView() {
let myDelay = 5.0
let scalePulseAnimation: CABasicAnimation = CABasicAnimation(keyPath: "transform.scale")
scalePulseAnimation.beginTime = CACurrentMediaTime() + myDelay
scalePulseAnimation.duration = 0.5
scalePulseAnimation.repeatCount = 2.0
scalePulseAnimation.autoreverses = true
scalePulseAnimation.fromValue = 1.0
scalePulseAnimation.toValue = 0.5
myView.layer.add(scalePulseAnimation, forKey: "scale")
}
凡拖延的關鍵路線是:
scalePulseAnimation.beginTime = CACurrentMediaTime() + myDelay
- 1. 如何延遲
- 2. 如何延遲ScheduledExecutorService?
- 3. Arduino到Unity3D延遲/延遲
- 4. 延遲jquery循環延遲
- 5. netem延遲不延遲
- 6. 延遲加載延遲
- 7. 如何延遲沒有time.sleep?
- 8. 如何設置延遲
- 9. dstat如何衡量延遲?
- 10. 如何延遲視頻MPMoviePlayer
- 11. dplyr如何按組延遲
- 12. 如何延遲FLEX代碼?
- 13. 如何延遲textview輸出?
- 14. 如何生成延遲
- 15. jQuery如何上傳延遲?
- 16. 如何延遲jQuery函數
- 17. 如何延遲加載?
- 18. 如何延遲mouseout功能?
- 19. 延遲傳遞值如何?
- 20. 如何延遲onClick(Android)
- 21. 如何延遲警報?
- 22. 如何獲得延遲
- 23. 如何在JavaScript中延遲
- 24. 如何在Java中延遲?
- 25. 如何迭代延遲
- 26. 如何更新setInterval延遲?
- 27. 如何基準apache延遲?
- 28. 如何延遲while循環?
- 29. 如何延遲Button.Flyout出現?
- 30. 如何使裝配延遲
我只想用GCD。 'dispatch_after(popTime,dispatch_get_main_queue(),^(void){#code在延遲#後要在主隊列上執行#> });' – BooRanger 2013-02-27 16:22:15
@BooRanger beginTime屬性有什麼問題? – 2013-02-27 16:32:10
[This answer](http://stackoverflow.com/a/11625742/608157)應該回答你的問題 – 2013-02-27 16:36:12