Wie die Hintergrundfarbe des Standard-Label innerhalb eines UITableViewCell anpassen?

StackOverflow https://stackoverflow.com/questions/403820

  •  03-07-2019
  •  | 
  •  

Frage

Ich bin für die letzten paar Stunden versucht, herauszufinden, wie dies zu tun, aber ohne Glück. Es gibt mehrere mögliche Lösungen für diese, wenn Google-Suche, aber nichts scheint zu funktionieren.

Ich versuche die Hintergrundfarbe des Standard UILabel anpassen, der in einem UITableViewCell geht (da ich bereits die Hintergrundfarbe der Zelle selbst angepasst), aber nichts, was ich tun scheint zu arbeiten.

Ich erstelle meine eigenen UILabel die Farben in -tableView anpassen: cellForRowAtIndexPath:

UILabel* label = [[[UILabel alloc] init] autorelease];
label.textColor = [UIColor blueColor];
label.backgroundColor = [UIColor redColor];
label.opaque = YES;
[cell.contentView addSubview:label];
cell.text = @"Sample text here";

Aber das funktioniert nicht, und die resultierende Tabellenansicht hat immer noch eine Reihe von Zellen mit Etikett mit schwarzem Text und weißen Hintergrund in ihm.

Irgendwelche Hinweise auf das, was ich hier falsch mache?

UPDATE: Wenn ich versuche, die folgende stattdessen zu tun:

UILabel* label = [[[UILabel alloc] init] autorelease];
label.textColor = [UIColor blueColor];
label.backgroundColor = [UIColor redColor];
label.opaque = YES;
[cell.contentView addSubview:label];
label.text = @"Sample text here";

Ich bekomme ein paar UITableViewCells ohne Text überhaupt.

War es hilfreich?

Lösung

Es scheint, dass Sie den Text in der Zelle anstelle des Etiketts sind zuweisen. Sie wollen wahrscheinlich:

label.text = @"Sample text here";

Auch, müssen Sie die Beschriftung der Rahmen setzen, was Sie benötigen:

label.frame = CGRectMake(10,10, 80, 40);

oder direkt im Konstruktor:

label = [[UILabel alloc] initWithFrame:myFrame];

Andere Tipps

Ich würde dies in Code nicht tun. Ich würde es mit einer benutzerdefinierten XIB-Datei tun und laden Sie es dann in Ihrem

- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath

Delegatfunktion. Auf diese Weise können Sie die XIB-Datei auf Ihren genauen Spezifikationen entwerfen und optimieren es.

Viel Glück!

Sie haben diese Frage vor gefragt, und erhielten richtige Antworten;

Wie wird die Hintergrundfarbe einer UITableViewCell anpassen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top