2012-06-20 25 views

Odpowiedz

14
[self.navigationController.navigationBar setBackgroundColor:[UIColor redColor]]; 

Spróbuj tak. Myślę, że będzie ci pomocna.

Edytuj: zaktualizowano kod w celu rzeczywistej kompilacji.

+0

nie wiem dlaczego, ale Xcode nie wyskakuje okienka 'barTintColor' po jego wpisaniu. – fnc12

2

Możesz użyć właściwości tinty UINavigationBar, aby zmienić jej kolor. Sprawdź to o tym article. Istnieje również UIAppearance, który pozwala na zmianę tła każdej aplikacji UINavigationBar, co według mnie jest dość potężne. Możesz sprawdzić this.

2

Można ustawić kolor odcień za pomocą navbar.tintColor = [UIColor redColor];

Zobacz odniesienie tutaj: apple docs

2

Spróbuj tego:

navigationBar.tintColor = [UIColor blackColor]; 
1

Można dostosować UINavigationBar z następujących propertys:

  • @property(nonatomic, assign) UIBarStyle barStyle
  • @property(nonatomic, retain) UIColor *tintColor
  • setBackgroundImage:forBarMetrics:
  • @property(nonatomic, copy) UIColor *backgroundColor

Dokładne metody i propertys proszę sprawdzić odniesienia klasy UINavigationBar i UIView

0
self.navigationController.navigationBar.tintColor = [UIColor blackColor]; 
+0

Dół głosowany, ponieważ jest niepoprawny. tintColor to kolor, który będzie używany do koloru pierwszego planu elementów przycisku paska, np. tekst "Wstecz", "Wstecz" i jakikolwiek inny tekst przycisku ... chcesz użyć barTintColor do ustawienia koloru paska. – n13

13

W nowych iOS to, że, jak to działa:?

self.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; 
self.navigationController.navigationBar.barTintColor =[UIColor colorAzulNavegacion]; 
+1

To działało dla mnie na iOS7! Dzięki! –

+0

UIBarStyleBlackOpaque jest przestarzałe w iOS 9 – user1366265

2

self.navigationController .navigationBar.translucent = false

self.navigationController .navigationBar.barTintColor = UIColor.redColor()

self.navigationController? .navigationBar.barStyle = UIBarStyle.BlackTranslucent

+0

Zasadniczo poprawne, z wyjątkiem BlackTranslucent jest przestarzałe. – n13

6

Muszę to sprawdzić za każdym razem, dodając tutaj moją odpowiedź (Swift). Poniższy kod ustawia to dla wszystkich pasków nawigacyjnych w aplikacji. Jeśli chcesz, możesz ustawić każdy z nich na osobnych paskach nawigacyjnych.

Można ustawić przezroczystość, kolor tytuł tekstu, kolor tła (jest to tzw barTintColor dzięki Apple!), A kolor przycisku bar poz planie, tak jak poniżej:

// Title text color Black => Text appears in white 
    UINavigationBar.appearance().barStyle = UIBarStyle.Black 

    // Translucency; false == opaque 
    UINavigationBar.appearance().translucent = false 

    // BACKGROUND color of nav bar 
    UINavigationBar.appearance().barTintColor = UIColor.redColor() 

    // Foreground color of bar button item text, e.g. "< Back", "Done", and so on. 
    UINavigationBar.appearance().tintColor = UIColor.whiteColor() 
+0

To powinno być wybrane jako najlepsza odpowiedź – duan