IOS7 navigatinBar tintColor изменить в поповере

Я разработал приложение для iPad. Я открываю несколько экранов в поповере с помощью контроллера навигации. Но я не изменил цвет оттенка навигационного контроллера в IOS 7. Как я могу изменить этот цвет. Thanx

UINavigationController *navigationController = [[[UINavigationController alloc] initWithRootViewController:airportsSearch] autorelease];
navigationController.navigationBar.barTintColor = [UIColor blackColor];
navigationController.navigationBar.translucent = NO;
self.popOver=[[UIPopoverController alloc] initWithContentViewController:navigationController];

self.popOver.delegate                    = self;
[self.popOver setPopoverContentSize:CGSizeMake(285, 370)];

[self.popOver presentPopoverFromRect:tempButton.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

2 ответа

Решение

Волшебное слово здесь barStyle, вам нужно сделать следующее, если вам это нужно черный:

navigationController.navigationBar.barStyle = UIBarStyleBlack;
navigationController.navigationBar.translucent = NO;

И если вы хотите изменить его цвет:

navigationController.navigationBar.barTintColor = [UIColor redColor];
navigationController.navigationBar.barStyle = UIBarStyleBlack;
navigationController.navigationBar.translucent = NO;

Установка NavigationBarStyle в UIBarStyleBlack также работала для меня, но только через раскадровку.

Я старался

[[UINavigationBar appearance] setBarStyle:UIBarStyleBlack];

так же как

[[UINavigationBar appearanceWhenContainedIn:[UIPopoverController class], nil] setBarStyle:UIBarStyleBlack];

в методе didFinishLaunchingWithOptions AppDelegate. Но ничего не изменилось. Работало только изменение BarStyle NavigationControllers NavigationBar внутри раскадровки.

Другие вопросы по тегам