Я использую three20 TTTableViewController
для моего текущего проекта. Для переключения между представлениями я использую UITabBar
. Некоторые из моих представлений имеют подпредставления - я не использую TTNavigator
для переключения между этими представлениями, но моя собственная логика (простые push / pop viewControllers).
Почему-то я не могу установить цвет / стиль моего UINavigationBar
в этих подпредставлениях (изначально это работает для моих основных видов, которые контролируются tabbarcontroller
).
Моя установка выглядит следующим образом:
В моем AppDelegate
я готовлю rootViewController
и navigationController
RootViewController *rootController = [[[RootViewController alloc] init] autorelease];
navigationController_ = [[UINavigationController alloc] initWithRootViewController:rootController];
navigationController_.navigationBar.barStyle = UIBarStyleBlack;
window_ = [[PSWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
window_.rootViewController = navigationController_;
Здесь я установил UIBarStyleBlack
в качестве стиля по умолчанию. Когда я запускаю приложение и проверяю различные виды, цвет / стиль навигационной панели правильный.
Один из моих mainViews
перенаправляет пользователя на TTTableView
UIViewController* targetViewController = [[[NSClassFromString(targetVC) alloc] init] autorelease];
if(targetViewController != nil) {
[[self retain] autorelease];
[self.navigationController popViewControllerAnimated:NO];
targetViewController.title = @"A Title";
[self.navigationController pushViewController:targetViewController animated:YES];
}
Приведенный выше код выводит текущий viewController и помещает targetViewController
в стек. Это работает. Однако цвет / стиль navigationBar
теперь является стандартным, а не черным, как я установил в своем AppDelegate
. Я проверил адреса объектов в отладчике, и это тот же navigationController
+ navigationBar
, что и в моем rootViewController
.
Когда я явно устанавливаю цвет / стиль navigationBar
в функции инициализатора целей, настройки игнорируются.
Кроме того, когда я нажимаю кнопку "Назад" на панели навигации, стиль / цвет в моем mainViews
также неверен (от черного до значения по умолчанию).
Есть идеи, как я могу отладить / исправить это?