2010-12-14 15 views
2

Ich habe eine benutzerdefinierte UITableViewCell, die die Zelle mit einem Hintergrund PNG und einem Etikett füllt.iphone UITableView Benutzerdefinierte Zelle ausgewählt Bild

Wenn der Benutzer die Zelle ausgewählt hat, möchte ich den Hintergrund für einen Moment ändern, um ihnen anzuzeigen, dass die Zeile ausgewählt wurde. Ähnlich dem Standardverhalten, wenn eine benutzerdefinierte Zelle nicht verwendet wird.

Wie wird das gemacht?

+1

Ich fand das kann ich nur gesetzt: \t \t \t \t image.HighlightedImage = das Bild zu verwenden. –

+0

UITableViewCell verfügt nicht über die Eigenschaft HighlightedImage und auch nicht über die Oberklasse UIView. UITableViewCell hat eine markierte Eigenschaft, aber das ist ein schreibgeschützter Boolescher Wert, der angibt, ob er gerade markiert ist oder nicht. Sagen Sie, dass Sie ein UIImage in Ihrem UITableViewCell haben, das den Hintergrund bereitstellt? Wenn dies der Fall ist, komplizieren Sie die Tabellenzelle mehr als nötig, da in UITableViewCell bereits Eigenschaften enthalten sind. –

Antwort

0

lassen Sie mich klar, zuerst tun Sie das backgroundimage.png ändern wollen ??

wenn ja, und Sie verwenden UIImageView dafür dann können Sie folgenden Code in rowDidSelected Ereignis schreiben ..

UIImageView *myImageView = [Cell viewWithTag:1]; //Tag is given in Interface Builder for the ImageView 
myImageView.image = [[UIImage alloc] imageNamed:@"newimage.png"]; 
1

Posting als Antwort so dies richtig ist (ursprünglich aus BahaiResearch.com):

in diesem Szenario ist die richtige Antwort die folgenden verwenden, wenn die Bildeinstellung ursprünglich:

image.HighlightedImage = [UIImage ..]; 

Andernfalls Sie laden Bilder, wenn die hig hlight Ereignis eintritt und in der Theorie gibt es eine leichte Verzögerung, usw.

Verwandte Themen