簡體   English   中英

iOS動畫重復(未調用補全框)

[英]iOS Animation Repeat (Completion Block Not Being Called)

我正在嘗試使動畫來回移動。 例如,在這樣的魚缸模擬中,我試圖讓魚來回移動。 我試圖使它無限長地工作,但是魚只向一個方向移動,而且完井區永遠不會被調用。 當魚到達屏幕末端時,有人可以建議我如何調用完成區塊嗎?

附件是我當前的代碼:

UIView.animate(withDuration: fishAnimationDuration, delay: fishAnimationDelay, options: [.allowAnimatedContent, .repeat], animations: {
                fish.frame = CGRect(x: fishXPosEnd, y: fishYPos, width: fishWidth, height: fishHeight)
            }, completion: { (finished: Bool) in
                    fish.image = #imageLiteral(resourceName: "fishBack")
                    UIView.animate(withDuration: fishAnimationDuration, delay: fishAnimationDelay, options: [.allowAnimatedContent], animations: {
                        fish.frame = CGRect(x: fishXPos, y: fishYPos, width: fishWidth, height: fishHeight)
                   })
 })

repeat選項處於選項中時,不會調用完成塊,因為重復動畫永遠不會完成。

在您的情況下,我將刪除repeat選項。 然后在第二個動畫的完成處理程序中,調用包含這些動畫塊的方法,以便再次調用這對動畫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM