2015-04-21 22 views
6

iOS verwendet die Standardfarbe (blau) für alle farbigen Texte in MFMailComposeViewController. Das ist nicht gut für mich, da der Kunde seine Firmenfarben in der App haben möchte. Wie ändere ich ihre Farbe in Orange?Wie ändert man die Farbe von MFMailComposeViewController-Texten und Schaltflächenbildern?

Ich frage speziell über Farben von Schaltflächensymbolen (Bild und Glocke Bild hinzufügen) und Texte mit E-Mail-Adressen. Ich habe bereits Farben der Navigationsleiste geändert. In der Dokumentation wird geschrieben:

Die Ansichtshierarchie dieser Klasse ist privat und Sie dürfen sie nicht ändern. Sie können das Aussehen einer Instanz jedoch mithilfe des UIAppearance-Protokolls anpassen.

Ich habe versucht, es zu verwenden, aber es funktioniert nicht (ich könnte es falsch machen, da ich UIAppearance nicht kenne). Dies ist, was ich versucht habe:

 [[UIButton appearanceWhenContainedIn:[MFMailComposeViewController class], nil] setTitleColor:[UIColor orangeColor] forState:UIControlStateNormal]; 

     [[UILabel appearanceWhenContainedIn:[MFMailComposeViewController class], nil] setTextColor:[UIColor orangeColor]]; 

enter image description here

+1

Verwenden tintColor wie diese, mailComposerViewController.view.tintColor = [UIColor whiteColor] – Sandeep

+0

Property tintColor für MFMailComposeViewController nicht verfügbar ist – Reconquistador

+0

Sorry, ich Ansicht gemeint, schau dir bitte den obigen Schnitt an. – Sandeep

Antwort

1

Wie Apple sagt: https://developer.apple.com/library/ios/documentation/MessageUI/Reference/MFMailComposeViewController_class/index.html

Die Ansicht Hierarchie dieser Klasse ist privat und Sie müssen es nicht ändern. Sie können das Aussehen einer Instanz jedoch anpassen, indem Sie das UIAppearance-Protokoll verwenden.

Wie auch immer, können Sie diesen Beitrag überprüfen: Customizing automatic MFMailComposeViewController opened from UITextView

+0

In diesem Beitrag gibt es nur Informationen, wie die Farbe der Texte in der Navigationsleiste ändern, was ich bereits getan habe. – Reconquistador

+0

Ja, Sie haben Recht. Hast du es versucht? [[UINavigationBar Aussehen] setTintColor: [UIColor redColor]]; – Bisca

+0

Ich muss das Aussehen von UINavigationBar nicht ändern, da es bereits geändert wurde. – Reconquistador

Verwandte Themen