Recientemente me encontré con este problema una vez más y después de algunas investigaciones, pensé que básicamente nada había cambiado (y probablemente no en un futuro previsible), así que terminé usando Facebook POP framework (no solo) para eso.
Puede realizar fácilmente animaciones de propiedades básicas tanto en vista como en capa, pero además, proporciona una transición suave entre los colores (y básicamente lo que desee, incluso sus tipos personalizados, con alguna codificación adicional). Así que para el color de fondo, usted haría algo como esto:
// Create spring animation (there are more types, if you want)
let animation = POPSpringAnimation(propertyNamed: kPOPViewBackgroundColor)
// Configure it properly
animation.autoreverses = false
animation.removedOnCompletion = true
animation.fromValue = UIColor.yourBeginningColor()
animation.toValue = UIColor.yourFinalColor()
// Add new animation to your view - animation key can be whatever you like, serves as reference
label.pop_addAnimation(animation, forKey: "YourAnimationKey")
Viola, ahora se pueden animar colores de fondo en todo lo que tenga de este inmueble!
Para cualquier futuros lectores, esto no es específico de UILabel, pero el requisito es que una vista debe comenzar con un color de fondo, incluso si ese color es claro. No necesita animar en la capa, UIView.backgroundColor funciona bien, siempre que lo anterior. –