UINavigationBar / Ошибка строки состояния в IOS7

Окончательное редактирование

(Вместо того, чтобы иметь слишком длинный вопрос с изменениями, вносящими окончательные изменения для уточнения, пожалуйста, смотрите другие изменения, если это необходимо).

Настройка контроллера

У меня есть приложение, которое настроено следующим образом:

InitialViewController (подклассECSlidingViewController)

Главный навигационный контроллер (подкласс)UINavigationController

Main Home View Controller (подкласс)UIViewController

вviewDidLoad из initialViewController Я загружаю основной контроллер навигации с Home View Controller в качестве его корня.

self.topViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MainNavVC"];
Проблема

При первой загрузке приложения строка состояния и панель навигации разделяются.

Это желаемый эффект.

Однако затем я загружаю контроллер модального представления и закрываю его, используя стандартные методы:

[self performSegueWithIdentifier:@"LoadSelectOpponentVC" sender:self];

Затем закройте с помощью:

[self dismissViewControllerAnimated:YES completion:nil];

Это, в свою очередь, приводит к тому, что главный навигационный контроллер (удерживающий контроллер домашнего просмотра) отображает строку состояния неправильно и перекрывается:

тестированиеДля параметра plist установлено значение YES -View controller-based status bar appearanceЯ пытался установитьedgesForExtendedLayout для соответствующих нет, но без изменений.логирование

Я попытался выйти из некоторых кадров, чтобы увидеть, где возникает проблема:

При первой загрузке:

Main Nav VC - Просмотр кадра - {{0, 0}, {320, 480}} "

Main Nav VC - Nav Bar Frame - {{0, 0}, {320, 44}}

Initial VC - View Frame - {{0, 0}, {320, 480}}

Home VC - View Frame - {{0, 0}, {320, 480}} -- viewDidLoad Home VC

Home VC - View Frame - {{0, 64}, {320, 416}} -- viewWillAppear Home VC

--- After Modal is opened/closed ----

Home VC - View Frame - {{0, 64}, {320, 416}} -- viewWillAppear Home VC

Main Nav VC - View Frame - {{0, 0}, {320, 480}} -- viewWillAppear Main Nav

Main Nav VC - Nav Bar Frame - {{0, 20}, {320, 44}} -- viewWillAppear Main Nav

Home VC - View Frame - {{0, 44}, {320, 436}} -- viewDidAppear Home VC

Ответы на вопрос(14)

Ваш ответ на вопрос