2011-07-24 24 views
13

ja zmieniłem paska nawigacji kolor za pomocą następującego koduCel C: Jak zmienić kolor tekstu w pasku nawigacyjnym

navconFvc.navigationBar.tintColor = [UIColor colorWithHexString:@"faf6f5"]; 

Kod pracował ale kolor tekstu również musi zostać zmienione (patrz zrzut ekranu poniżej). Również przycisk odświeżania logo po prawej stronie ma wpływ także

enter image description here

Ten sam problem występuje, jeśli mogę przejść do innej strony w stosie

enter image description here

Pytanie: Jak mogę zmienić kolor

  • tytułowego tekstu
  • Ba tekst przycisku ck i
  • kolor ikony przycisku paska prawego?

Po zmianie koloru tła paska nawigacyjnego?

Odpowiedz

15

Dla tytule oto sposób:

iPhone Navigation Bar Title text color

A dla niestandardowych przycisków oto sposób:

adding buttons to ui navigation controller bottom bar

+1

Rincon-Fadul, dzięki za linki, pierwszy link działa dobrze dla mnie. Jednak nadal nie jestem pewien, w jaki sposób mogę zmienić kolor tekstu przycisku lub kolor ikony. W przypadku ikony prawdopodobnie mogę bezpośrednio zmienić obraz. Ale co na przykład z kolorem tekstu przycisku Wstecz? Ten link naprawdę nie wyjaśnia tej części. – Zhen

+0

Stara odpowiedź, użyj @ Erwana – Zeb

1

właśnie ułożyła prosty UIViewController podklasę, która dodaje konfigurowalny przycisk Wstecz, który pozwala zmieniać kolory tekstu. Zasadniczo dodaje on pewną logikę, aby animować przycisk wstecz, tak jak robi to UINavigationController podczas korzystania z właściwości leftBarButtonItem. Możesz to rozszerzyć, aby również zrobić prawyBarButtomItem.

https://github.com/typeoneerror/BBCustomBackButtonViewController

6

Aby zmienić kolor tekstu:

_navController.navigationBar.titleTextAttributes 
     = @{UITextAttributeTextColor : [UIColor blackColor]}; 

Dodanie przycisku odświeżania i kolor to:

UIBarButtonItem *button = [[UIBarButtonItem alloc] 
     initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh 
     target:self action:@selector(reload)]; 

[button setTintColor:[UIColor blackColor]]; 
self.navigationItem.rightBarButtonItem = button; 

zmiennych, bar efekt nawigacji background:

_navController.navigationBar.backgroundColor = [UIColor whiteColor]; 
_navController.navigationBar.tintColor = [UIColor whiteColor]; 
_navController.navigationBar.translucent = NO; 
15

W iOS 7, wystarczy użyć:

self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName : [UIColor whiteColor]}; 

Change [UIColor whiteColor] z tym, co tekst kolor chcesz

Powiązane problemy