2010-12-09 2 views
1

Ich möchte die Hintergrundfarbe einer Zelle in meiner Tabellenansicht aktualisieren, sobald der Benutzer darauf klickt. Die Sache ist, wenn ich die Auswahl Stil deaktivieren durch den Aufruf:Hintergrund ändern Farbe der benutzerdefinierten UITableViewCell einmal geklickt funktioniert nicht gut

[code] [Zelle setSelectionStyle: UITableViewCellSelectionStyleNone]; [/ code]

Die Farbe ändert sich, wie ich will, aber es gibt keine visuelle Rückmeldung an den Benutzer der Auswahl vor der Farbänderung, die für meine Anwendung nicht wünschenswert ist.

Wenn ich diese Zeile entfernen und die Farbe wie dies nur in einer IBAction Funktion ändern:

[code] [Cell setBackgroundColor: [UIColor lightGrayColor]]; [/ code]

Ich habe am Ende ein Rechteck in der Mitte der Zelle mit der ursprünglichen Farbe vor der Auswahl und Grenzen der Zelle mit der Farbe, die ich festlegen möchte. Wenn ich meine IBAction-Funktion zweimal anrufe, wird die Hintergrundfarbe korrekt eingestellt.

Ich bin mir nicht sicher, was die Ursache oder wie es zu lösen ist.

Bitte beachten Sie, dass ich alle meine Zelle Setup (Einstellung von Text, Hintergrundfarbe, Text Schatten, etc) in CellForRowAtIndexPath. Ich habe es in WillDisplayCell anders gemacht, aber immer noch ohne Erfolg.

Hoffnung jemand kann etwas Licht in die Sache vor Ort :) Prost AF

Antwort

0

Check-out this Link kann es helfen könnte ....

HAPPY iCODING ...

+0

Danke für die Antwort. Die Sache ist, dass ich drei Farben in meiner Tabelle habe. eine für den Normalzustand (hellblau), eine für den deaktivierten Zustand (grau) und eine für den aktiven Zustand (grün). Wenn Sie also den Hintergrund der Tabelle auf Schwarz (oder eine andere Farbe) setzen, wirkt sich dies auf die Hintergrundfarben anderer Zellen aus. – Abolfoooud

+0

Den können Sie 3 Bilder (hellblau, grau, grün) mit Höhe und Breite gleich wie Zelle und fügen Sie es in die Zelle nach Ihrer Anforderung. –

+0

ok ich glaube das ist der einzige weg mit dem ich gehen muss ... vielen dank – Abolfoooud

0

Ich habe es geschafft, eine Teillösung für mein Problem zu finden, und hier ist es für den Fall, dass andere über das gleiche Problem stolpern:

Hoffe es hilft AF

Verwandte Themen