Изменить оттенок панели навигации с помощью Xcode - PullRequest
6 голосов
/ 05 февраля 2012

Я искал на этом сайте и на других, как настроить изменение оттенка навигационной панели, я видел примеры, но это не совсем то, что мне нужно, поэтому любая помощь будет оценена.

в моем приложении делегат:

@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;
}

Когда я ввожу код self.navigationController.navigationBar setTintColor:[UIColor blackColor] выше, он меняет только один из моих контроллеров навигации, но не тот, который мне нужен.

У меня есть 7 элементов на панели вкладок, и когда я нажимаю «БОЛЬШЕ ...», я получаю табличное представление с другими элементами, которые не помещаются на главном экране, панель навигации добавляется автоматически, и независимо от того, что Я не могу изменить этот оттенок панели навигации, я могу изменить те, которые у меня есть @synthesize, но не автоматически введенные.

Может кто-нибудь сообщить мне, как изменить автоматически размещаемую панель навигации?

Ответы [ 2 ]

17 голосов
/ 05 февраля 2012

Вы можете сделать это, используя внешний прокси. Если вы установите цвет таким образом, он будет применяться ко всем панелям навигации в приложении:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]];
3 голосов
/ 18 декабря 2013

Для iOS 6 и ниже:

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

Для iOS 7 и выше:

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

Установите этот метод в AppDelegate.

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