Ich möchte den Hintergrund für die Navigationsleiste auf Schwarz und alle darin enthaltenen Farben auf Weiß einstellen .
Also habe ich diesen Code verwendet:
[[UINavigationBar appearance] setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[UIColor whiteColor],
NSForegroundColorAttributeName,
[UIColor whiteColor],
NSForegroundColorAttributeName,
[NSValue valueWithUIOffset:UIOffsetMake(0, -1)],
NSForegroundColorAttributeName,
[UIFont fontWithName:@"Arial-Bold" size:0.0],
NSFontAttributeName,
nil]];
Aber zurück Schaltfläche Textfarbe , Pfeil und Bar - Taste hat immer noch den Standard blaue Farbe .
Wie ändere ich diese Farben wie auf dem Bild unten?
Antworten:
Das Verhalten einiger Eigenschaften von
UINavigationBar
hat sich gegenüber iOS 7 geändert . Sie können im Bild unten sehen:Zwei schöne Links, die ich gerne mit Ihnen teilen möchte. Für weitere Details können Sie über diese Links gehen:
In der Apple-Dokumentation für barTintColor heißt es:
Beispielcode :
quelle
[self.navigationController.navigationBar setTitleTextAttributes:@{[UIFont fontWithName:@"YOURFONT" size:14], NSFontAttributeName}];
Ich brauchte ungefähr einen halben Tag, um das herauszufinden, aber das hat bei mir funktioniert. Im rootViewController, der den Navigationscontroller initialisiert, habe ich diesen Code in meine viewDidAppear-Methode eingefügt:
Mein vollständiger Beitrag dazu hier
quelle
Swift3, ios 10
So weisen Sie die Farbe in AppDelegate global zu
didFinishLaunchingWithOptions
:Swift 4, iOS 11
quelle
Vins Antwort hat bei mir großartig funktioniert. Hier ist die gleiche Lösung für C # -Entwickler, die Xamarin.iOS / MonoTouch verwenden:
quelle
Swift / iOS8
quelle
quelle
UINavigationBar
Verwenden Sie diesen Code, um die Farbe des Titels richtig zu ändern :UITextAttributeTextColor
ist in der neuesten ios 7-Version veraltet. Verwenden SieNSForegroundColorAttributeName
stattdessen.quelle
Wenn Sie schauen , um den Titel zu ändern , Textgröße und die Textfarbe müssen Sie die NSDictionary ändern titleTextAttributes , für 2 seiner Objekte:
quelle
Ich denke, frühere Antworten sind richtig, dies ist eine andere Möglichkeit, dasselbe zu tun. Ich teile es hier mit anderen, nur für den Fall, dass es für jemanden nützlich wird. So können Sie die Text- / Titelfarbe für die Navigationsleiste in ios7 ändern:
quelle
Es scheint, dass
Accessibility
Steuerelemente in deriOS Settings
Überschreibung so ziemlich alles, was Sie versuchen, farblich mit den Schaltflächen der Navigationsleiste zu tun. Stellen Sie sicher, dass Sie alle Einstellungen auf die Standardpositionen eingestellt haben (Kontrast erhöhen, Fettdruck , Schaltflächenformen usw. deaktivieren), da sich sonst nichts ändert. Sobald ich es getan hatte, funktionierte der gesamte Farbänderungscode wie erwartet. Sie müssen sie möglicherweise nicht alle ausschalten, aber ich habe es nicht weiter verfolgt.quelle
Swift 5 / iOS 13
So ändern Sie die Farbe des Titels im Controller:
quelle