Да, я видел много вопросов об этом, но ничего, что касается моей конкретной проблемы.Проблемы с панелью задач iOS 7 с UITabBarController
Мне удалось получить статусную строку, чтобы быть сплошной черной (я бы хотел синий, но я счастлив, что он прочный, непрозрачный). Я совершил это, делая
- в MyApp-Info.plist не добавляя 'View контроллер на основе строку состояния внешнего вида' = NO значения
- В AppDelegate делает
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { [application setStatusBarStyle:UIStatusBarStyleLightContent]; self.window.clipsToBounds =YES; }
- в моем
viewDidLoad
делаетif ([self respondsToSelector:@selector(edgesForExtendedLayout)]) { self.edgesForExtendedLayout = UIRectEdgeNone; }
Отлично.
Но за UITabBarController он по-прежнему прозрачна. Контроллеры представлений внутри моего контроллера tabbar являются подклассами одного и того же контроллера представления в первом снимке экрана. И тот же код viewDidLoad
вызывается.
Любые идеи?
Попробуйте установить navigationBarStyle по умолчанию: self.navigationController.navigationBar.barStyle = UIBarStyleDefault; –
Спасибо, Дэвид ... где я должен это делать? В 'viewDidLoad' или в appDelegate? – phil
Я сделал это в viewWillAppear –