Tekst tła na pasku stanu jest nadal czarny. Jak zmienić kolor na biały?
// io8, swift, Xcode 6.0.1
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.navigationBar.barTintColor = UIColor.blackColor()
self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.orangeColor()]
}
Podoba mi się odpowiedź Alexa. Jeśli chcesz coś szybko wypróbować,
ViewController
upewnij się, że używaszźródło
NSForegroundColorAttributeName
teraz powinna byćNSAttributedStringKey.foregroundColor
NSAttributedString.Key.foregroundColor
zamiastNSForegroundColorAttributeName
Aby zmienić kolor uniwersalnie, kod ten powinien siedzieć w
NavigationController
„sviewDidLoad
funkcji:Aby to zmienić za
ViewController
trzeba odwoływać sięNavigationController
odViewController
i pisać podobne linie w tymViewController
„sviewWillAppear
funkcji.źródło
Szybki 5
Szybki 4
źródło
Aby pracować w Objective-c, muszę umieścić następujące wiersze
viewWillAppear
w moim CustomViewController.W przypadku Swift2.x działa to:
W przypadku Swift3.x to działa:
źródło
Aby wykonać tę pracę w scenorysie (Interface Builder Inspector)
Z pomocą
IBDesignable
możemy dodać więcej opcji do Interface Builder InspectorUINavigationController
i dostosować je do scenorysu. Najpierw dodaj następujący kod do projektu.Następnie po prostu ustaw atrybuty dla UINavigationController w scenorysie.
źródło
Jeśli chcesz ustawić kolor odcienia i kolor paska dla całej aplikacji, następujący kod można dodać do AppDelegate.swift w
Pasek nawigacji Ustawiono TintColor i tintColor
źródło
Zaktualizowano z szybką 4
źródło
W Swift5 i Xcode 10
źródło
Swift 4.2 wersja odpowiedzi Alberta
źródło
Ustawienie koloru tekstu tytułu paska nawigacji na biały w Swift w wersji 4.2:
źródło
Szybki 4
źródło
Swift 4.1
Dodaj func do viewDidLoad
W
setup()
funkcji dodaj:źródło
Aby uzyskać niestandardowy kolor do
TitleText
atNavigationBar
, oto prosty i krótki kod dla Swift 3:lub
źródło
w Swift 4.2
źródło
Swift w górę poprzez Swift 3.2 (nie Swift 4.0)
źródło
W Swift 3 to działa:
źródło
Swift 5.1
Kopiuj i wklejaj tylko
ViewDidLoad()
i zmieniaj jego i rozmiar zgodnie z potrzebami. Przed kopiowaniem i wklejaniem dodaj pasek nawigacji u góry ekranu.Jeśli to nie zadziała, możesz spróbować zmienić tylko kolor tekstu
źródło