Как я могу анимировать фон моего контроллера вида, чтобы он исчезал среди нескольких цветов?
Как я могу это сделать, не вызывая бесконечных проблем с памятью? Я пытаюсь что-то вроде этого:
override func viewDidAppear(animated: Bool) {
view.backgroundColor = UIColor.whiteColor()
fadeBackground()
}
let colors = [UIColor.blueColor(), UIColor.redColor(), UIColor.greenColor(), UIColor.orangeColor(), UIColor.purpleColor()]
func fadeBackground(){
UIView.animateWithDuration(4, delay: 0, options: UIViewAnimationOptions.CurveLinear, animations: {
var randomIndex = Int(arc4random_uniform(UInt32(self.colors.count)))
self.view.backgroundColor = self.colors[randomIndex]
}) { (stuff Bool) -> Void in
self.fadeBackground()
}
}
Я боюсь, что это в конечном итоге съест память. Как я могу сделать это без рекурсии? Нужно ли мне [unowned self]
?