2012-04-12 5 views
3

Ich versuche, UIAppearance zu verwenden, um ein einheitliches Farbthema in meiner iOS-App zu erhalten. Zum Beispiel versuche ich die Textfarbe aller UILabel Objekte wie folgt festzulegen:Einige UI-Elemente verfügen nicht über UIAppearance-Merkmale

[[UILabel appearance] setTextColor:[UIColor colorWithRed:0.7 green:0.07 blue:0.12 alpha:1]]; 

Diese für alle Objekte statisch definiert in meinem Storyboard/XIBs gut funktioniert. Manchmal muss ich jedoch dynamisch ein UILabel in einer Ansicht erstellen. In diesen Fällen wird das UIA-Erscheinungsbild nicht verwendet. Stattdessen wird stattdessen die Standardtextfarbe (schwarz) verwendet.

Hat jemand in dieses Problem gerannt/einen anderen Weg gefunden, als auf den alten Ansatz "Jedes Element manuell einstellen" zurückzugreifen?

+0

Das ist wirklich seltsam ist. Ich merke, dass, wenn ich die dynamischen Labels erzeuge und ** dann ** ihr Aussehen einstelle, es funktioniert ... aber ich kann mir nicht vorstellen, dass das in den meisten Fällen hilft. –

+0

Ich habe es tatsächlich versucht, aber es hat auch nicht funktioniert. Bisher erstelle ich einfach die Bezeichnung und rufe dann 'myLabel.textColor = [[UILabelerscheinung] textColor]' auf, um sie auf die Farbe der aktuellen UIAppearance-Farbe zu setzen, aber es scheint so, als würde der Punkt von UIAppearance fehlen. – jproch

Antwort

Verwandte Themen