2012-02-05 27 views
6

Przeglądam tę stronę i na innych, jak ustawić zmianę paska paska nawigacyjnego, widziałem przykłady, ale nie jest to dokładnie to, czego potrzebuję, więc każda pomoc zostanie doceniona.Zmiana odcienia paska nawigacji za pomocą Xcode

na moim delegata app mam:

@synthesize window; 
@synthesize tabBarController; 
@synthesize navigationController; 
@synthesize navigationController1; 
@synthesize navigationController2; 
@synthesize viewController; 
@synthesize viewController2; 
@synthesize viewController3; 

#pragma mark - 
#pragma mark Application lifecycle 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions {  

    // Override point for customization after application launch. 


    // Set the tab bar controller as the window's root view controller and display. 
self.window.rootViewController = self.tabBarController; 
[self.window makeKeyAndVisible]; 


    return YES; 
} 

Kiedy wprowadzić kod self.navigationController.navigationBar setTintColor:[UIColor blackColor] na powyższe, zmienia się tylko jeden z moich kontrolerów nawigacji, ale nie jedynym, czego potrzebuję.

Mam 7 pozycji na moim pasku zakładek i po naciśnięciu "WIĘCEJ ..." otrzymuję widok tabeli z innymi przedmiotami, które nie mieszczą się na głównym ekranie, pasek nawigacyjny jest dodawany automatycznie i bez względu na to co mogę zrobić, nie mogę zmienić tego odcienia paska nawigacji, mogę zmienić te, które mam @synthesize, ale nie te wprowadzone automatycznie.

Czy ktoś może dać mi znać, jak zmienić automatycznie umieszczony pasek nawigacyjny?

Odpowiedz

17

Możesz to zrobić za pomocą proxy wyglądu. Jeżeli ustawić kolor jak to będzie ona miała zastosowanie do każdego paska nawigacji w aplikacji:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]]; 
+1

Chciałem tylko wspomnieć, że serwer proxy wyglądu jest dostępny tylko w systemie iOS 5. – Randall

+0

Podobnie jak sama metoda setTintColor. Jeśli potrzebujesz tych rzeczy do pracy na iSO4, będziesz potrzebować innego podejścia. Oto dyskusja, która zawiera linki do niektórych rozwiązań: http://stackoverflow.com/questions/9150956/customizeappearance-compatibility-on-others-ios/9151033#9151033 –

+0

Fantastyczne, tego właśnie szukałem. Dziękuję Ci bardzo. – Derek

3

Dla iOS 6 i dolna:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]]; 

Dla iOS 7 i nowszy:

[[UINavigationBar appearance] setBarTintColor:[UIColor blackColor]]; 

Ustaw go w tej metodzie w AppDelegate.

Powiązane problemy