three20 TTTableViewController -> UINavigationBar Цвет / Стиль Проблема - PullRequest
1 голос
/ 11 августа 2011

Я использую 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 также неверен (от черного до значения по умолчанию).

Есть идеи, как я могу отладить / исправить это?

...