Ce code est en cours d'exécution dans la méthode touchended d'un uiview sous-classé, cependant il ne s'anime pas, il change juste instantanément la couleur d'arrière-plan. Qu'est-ce qui ne va pas?La durée d'animation de l'iPhone UIView ne fonctionne que instantanément
self.backgroundColor = [UIColor blackColor];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:20];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
if (score < .40) {
self.backgroundColor = [UIColor redColor];
} else {
self.backgroundColor = [UIColor greenColor];
}
[UIView commitAnimations];
-t-il fonctionner lorsque vous appelez à partir un autre endroit, dans la sous-classe ou même en dehors de la sous-classe? – mvds
change la couleur vraiment animable ??? – lukya
Il est possible, bien que peu probable, que '20' soit interprété plutôt que d'être lancé comme un flottant. Essayez de le donner 20.0. Vérifiez également que cette couleur est une «propriété animable» dans les documents du développeur Apple. – mtrc