2009-06-11 8 views
5

Ich habe eine UIView als Subview einer benutzerdefinierten Unterklasse von UITableViewCell. Ich verwende es, um die Farbe nur eines kleinen Bereichs der Zelle dynamisch zu ändern.Wie beibehalten oder animieren Subview Hintergrundfarbe in UITableViewCell bei der Auswahl?

Wenn ich die Zelle auswähle, wird die Hintergrundfarbe der gesamten Zelle - einschließlich der Hintergrundfarbe der Unteransicht - in Blau geändert. Das ist in Ordnung, es passiert sofort. Die Auswahl führt zu einem anderen View-Controller.

Wenn ich jedoch vom View-Controller zurückkomme, animiert es den Hintergrund wieder von Blau zu Weiß - aber es animiert nicht die Hintergrundfarbe meiner Unteransicht. Der Effekt wird blau zu Weiß animiert und ändert sich dann schlagartig in meine ursprüngliche Farbe zurück.

Wie kann ich entweder

  • dieses subview der an allen Hintergrundfarbe befreit von wechselnden,
  • oder den Übergang animieren, so dass meine Farbe schön zurückgegeben wird?

Vielen Dank!

Antwort

4

Die folgenden zeigt, wie eine Farbänderung animieren:

UIView * blue = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 300, 20)]; 
[self.view addSubview:blue]; 
blue.backgroundColor = [UIColor whiteColor]; 
[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:1]; 
blue.backgroundColor = [UIColor blueColor]; 
[UIView commitAnimations]; 
[blue release]; 

Hoffentlich können Sie es an Ihre Bedürfnisse anzupassen.

Tom

Verwandte Themen