Я застрял в цикле анимации. У меня есть кнопка с именем [stopBtn
] и UIView с именем [backgroundView
]. Я хочу оживить цвет фона UIView с момента загрузки ViewController до момента его уничтожения. в функции viewDidAppear
я начинаю пульсировать, записывая animateView()
func animateView(){
UIView.animateWithDuration(1.0, animations: {
self.backgroundView.backgroundColor = UIColor.blackColor()
self.view.bringSubviewToFront(self.stopBtn)
}, completion: {
(Completed: Bool) -> Void in
UIView.animateWithDuration(1.0, delay: 0, options: UIViewAnimationOptions.CurveLinear, animations: {
self.backgroundView.backgroundColor = UIColor(red: 39, green: 117, blue: 0, alpha: 1)
self.view.bringSubviewToFront(self.stopBtn)
}, completion: {
(Completed : Bool) -> Void in
self.animateView()
})
})
}
@IBAction func stopBtnPressed(sender: UIButton) {
print("pressed")
}
Мой вопрос в том, почему мой stopBtn
не работает? Я уже знаю, что он застрял в цикле, поэтому мне нужна помощь для правильной анимации (может быть, в другом потоке или что-то еще и оставить основной поток открытым).
stopBtn
подключен к другому ViewController в раскадровке. Я попытался создать IBAction, но это не сработало. Я также пытался вывести stopBtn
в начало подпредставления [self.view.bringSubviewToFront(self.stopBtn)
].