Antwort

8

Diese Frage wurde gelöst here. Im Grunde müssen Sie eine UIButton erstellen, konfigurieren Sie wie gewünscht, und initialisieren Sie die Bar Schaltfläche Element mit der UIButton als benutzerdefinierte Ansicht.

99

fand ich eine einfachere Möglichkeit, nur die Farbe des Titels zu ändern: iOS7:

UIBarButtonItem *button = 
[[UIBarButtonItem alloc] initWithTitle:@"Title" 
            style:UIBarButtonItemStyleBordered 
           target:nil 
           action:nil]; 
[button setTitleTextAttributes: 
      [NSDictionary dictionaryWithObjectsAndKeys: 
       [UIColor redColor], NSForegroundColorAttributeName,nil] 
              forState:UIControlStateNormal]; 

und vor iOS7:

UIBarButtonItem *button = 
    [[UIBarButtonItem alloc] initWithTitle:@"Title" 
            style:UIBarButtonItemStyleBordered 
            target:nil 
            action:nil]; 
[button setTitleTextAttributes: 
      [NSDictionary dictionaryWithObjectsAndKeys: 
       [UIColor redColor], UITextAttributeTextColor,nil] 
            forState:UIControlStateNormal]; 
+2

Sicherlich eine gute Lösung, wenn Sie iOS 5.0 oder höher sind. OP: Überprüfen Sie UIBarItem.h für Details. – gschandler

+0

Ich habe schon ewig gesucht, um herauszufinden, wie man die Textfarbe ändert, vielen Dank !! Glücklicherweise sind die meisten Telefone jetzt auf IOS5, also ist das nicht wirklich ein Problem – AdamM

+0

Große Antwort, danke! –

3

Auf ähnliche Notiz von Guvvy Ava Sie Schriftgröße ändern können wie

5

Es gibt zwei Möglichkeiten, die Farbe des angezeigten Textes UIBarButtonITem zu ändern.

1)

[barButtonITem setTintColor:[UIColor redColor]]; 

2) oder Sie können Sie einen beliebigen UIColor Klassenmethode. das ist wirklich effizient solution.Althought für iOS 7 Sie NSForegroundColorAttributeName verwenden können und

barButtonItem setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor clearColor],NSForegroundColorAttributeName, nil] forState:UIControlStateNormal]; 
0

verwenden Wenn Sie die Systemnavigationsleiste Schaltfläche Element verwenden dann Taste Tönungsfarbe

self.navigationController.navigationBar.tintColor = [UIColor whiteColor]; 

zu ändern verwenden zu ändern Schaltfläche Textfarbe verwenden Sie den folgenden Code auch.

[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]} forState:UIControlStateNormal]; 

die folgende Codezeile hinzufügen, die Viewcontroller Sie Ihre Farbe

Verwandte Themen