Mam więc ten kod, który powinien zmienić czcionkę tytułu paska nawigacyjnego, ale działa
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont
fontWithName:_dataManager.optionsSettings.fontString size:14], NSFontAttributeName,
[UIColor whiteColor], NSForegroundColorAttributeName, nil];
[[UINavigationBar appearance] setTitleTextAttributes:attributes];
Zmiana czcionki przycisku Wstecz za pomocą tego kodu działa dobrze.
//set backbutton font
NSDictionary *normalAttributes = [NSDictionary dictionaryWithObjectsAndKeys:
[UIFont fontWithName:_dataManager.optionsSettings.fontString size:15], NSFontAttributeName,
nil];
[[UIBarButtonItem appearance] setTitleTextAttributes:normalAttributes
forState:UIControlStateNormal];
ios
fonts
ios7
navigationbar
aZtraL-EnForceR
źródło
źródło
navigationBar.LargeTitleTextAttributes
nic ani nic w tym względzie. Czy wiesz, jak globalnie ustawić czcionkę LargeTitle?Nie ma nic złego w innych odpowiedziach. Udostępniam tylko wersję storyboardu do ustawiania czcionki.
1. Wybierz pasek nawigacji w kontrolerze nawigacji
2. Zmień czcionkę tytułu w Inspektorze atrybutów
(Prawdopodobnie będziesz musiał przełączyć Odcień paska dla paska nawigacji, zanim Xcode podniesie nową czcionkę)
Uwagi (zastrzeżenia)
Zweryfikowano, że to działa w Xcode 7.1.1+. ( Zobacz przykłady poniżej )
Gotchas (deux)
Niektóre z nich są powtarzane, co oznacza, że najprawdopodobniej warto na nie zwrócić uwagę.
Wynik
Próbki
Obsługa czcionek niestandardowych
Uwaga ~ Ładna lista kontrolna znajduje się na stronie Code With Chris i możesz zobaczyć przykładowy projekt do pobrania.
Jeśli masz własną czcionkę i chcesz jej użyć w swojej serii ujęć, istnieje przyzwoity zestaw odpowiedzi na następujące pytanie SO . Jedna odpowiedź określa te kroki.
Obejście niestandardowych czcionek
Wygląda więc na to, że Xcode może obsługiwać niestandardowe czcionki w UINavigationItem, ale ta funkcja po prostu nie aktualizuje się prawidłowo (wybrana czcionka jest ignorowana).
źródło
Spróbuj tego:
źródło
Mój kod Swift do zmiany tytułu paska nawigacji:
A jeśli chcesz również zmienić czcionkę tła, mam to w mojej AppDelegate:
źródło
DODAJ ten jednoliniowy kod w swoim delegacie aplikacji - zakończono Lauch. Zmieni czcionkę, kolor paska nawigacji w całej aplikacji.
źródło
Oto odpowiedź na Twoje pytanie:
Przenieś kod do poniższej metody, ponieważ tytuł paska nawigacji został zaktualizowany po załadowaniu widoku. Próbowałem dodać powyższy kod w viewDidLoad nie działa, działa dobrze w metodzie viewDidAppear.
źródło
Każdy potrzebuje wersji Swift 3.
redColor()
zmienił się na sprawiedliwyred
.źródło
Jest trochę bardziej czytelny przy użyciu literałów:
źródło
Miałem jeden problem, ponieważ kiedy próbowałem programowo zmienić tytuł NavigationItem, nie byłem w stanie znaleźć mojej czcionki rodzinnej (próbowałem wielu rzeczy, ale nie można było go poprawnie uruchomić), więc znalazłem bardzo przyjemne i łatwe obejście w scenorysie.
Na koniec powinieneś mieć coś takiego w konspekcie dokumentu:
I coś takiego w Twoim ViewController:
Mam nadzieję, że to pomoże.
źródło
źródło
Ten jako alternatywa dla Swift 4 (już odpowiedź @Josh):
źródło
iOS 11
Cel C
źródło
Dla Objective-C, aby ustawić czcionkę i kolor
źródło
Oto odpowiedź na Swift 4 😁:
źródło
Nie zapomnij dodać wartości surowych kluczy, aby uniknąć błędów kompilacji.
źródło
Swift 4.2
źródło
Dodaj to rozszerzenie
Dodaj następujący wiersz w viewDidLoad ()
źródło
Praca w swift 3.0 Aby zmienić kolor tytułu, musisz dodać atrybut titleTextAttributes w ten sposób
źródło