-1
我想我的viewController中的imageView「脈動」,這意味着變大,然後再變小,重複,直到「開始」按鈕被按下。問題是,每次我在viewDidLoad()中使用repeat-while循環調用該函數時,無論出於何種原因它都有一個斷點。重複while循環不起作用 - 爲什麼?
這是()我viewDidLoad中的一部分:
repeat {
pulsate()
} while hasStarted == false
當我按下啓動按鈕,hasStarted成爲真正的,它應該停止跳動。但它甚至不啓動該功能,它立即調用一個錯誤。問題在哪裏?
這裏是我的搏動() - 函數
func pulsate()
{
frameOR = imageView.frame
frameNext = CGRect(x: imageView.frame.midX - 35, y: imageView.frame.midY - 35, width: 80, height: 80)
let frameVDL = CGRect(x: imageView.frame.midX - 150, y: imageView.frame.midY - 150, width: 300, height: 300)
if start == false
{
UIView.animate(withDuration: 2, animations: {
self.imageView.frame = frameVDL
}) { (finished) in
UIView.animate(withDuration: 2, animations: {
self.imageView.frame = self.frameOR
}, completion: nil)
}
}
}
感謝您的幫助!祝你有美好的一天!
有什麼錯誤? –
您正在阻止主線程。在程序控制返回到主事件循環之前,沒有按鈕(或任何其他)的UI操作方法將被執行。 –