Панель навигации перекрывает строку состояния для вложенного UINavigationController, когда скрывается одна панель навигации.

Я сталкиваюсь с тем, что кажется неправильным поведением. У меня есть один UINavigationController, который содержит в себе tabBarController. Этот tabBarController имеет более 5 вкладок, так что есть кнопка more, которая загружает MoreController navigationController. Конечно, это создает вложенные навигационные контроллеры, поэтому я хочу скрыть одну из панелей навигации.

Я делаю это, делая мой ApplicationDelegate UINavigationControllerDelegate:

  [[tabBarController moreNavigationController] setDelegate:[UIApplication sharedApplication].delegate];

И реализации:

(void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
   navigationController.navigationController.navigationBarHidden = YES;
}

Тем не менее, я в конечном итоге с перекрытием строки состояния:

перекрытый

Теперь, если я добавлю некоторый код для исправления фрейма вручную, в строке состояния все еще будет какое-то странное наложение цветов, и теперь под панелью навигации будет черный разрыв. Что дает?

все еще не прав

0 ответов

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