Строка состояния iOS7 на панели навигации

Я тестирую свое приложение с iOS7, и у меня проблема со строкой состояния. В основном строка состояния отображается на панели навигации, как показано ниже:

iOS7 Status Bar Issue

Я пытаюсь позвонить в свой viewDidLoad

 self.edgesForExtendedLayout = UIRectEdgeNone;
 self.automaticallyAdjustsScrollViewInsets = YES;

без успеха.

Я также добавил к info.plist файлу UIViewControllerBasedStatusBarAppearance без везения.

Основная проблема заключается в том, что приложение должно быть совместимо с iOS6 и iOS7, а в настоящее время на iOS7 вид сдвинут на 20 пикселей сверху.

Ответ 1

edgesForExtendedLayout и automaticallyAdjustsScrollViewInsets являются только стандартами для того, как контроллеры родительских представлений выставляют/управляют представлением. Похоже, вы используете UINavigationBar, но не UINavigationController, что означает, что эти свойства ничего не сделают, если вы не закодируете их.

Вы можете переключиться на использование UINavigationController, или вы можете программно изменить высоту вашего UINavigationBar с 44 до 64 на iOS 7.

Ответ 2

Добавьте выход в UINavigationBar.

float currentVersion = 7.0;

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= currentVersion) {
    // iOS 7
    self.navBar.frame = CGRectMake(self.navBar.frame.origin.x, self.navBar.frame.origin.y, self.navBar.frame.size.width, 64);
}

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

Я ответил, что здесь:

Положение панели навигации для модального просмотра - iOS7

Ответ 3

Это самая большая проблема, которая стоит в iOS 7, и есть много решений для решения этой проблемы, но, на мой взгляд, лучший способ решить - удалить панель навигации и встроить контроллер вида в контроллер навигации, перейдя в редактор > Вставить в контроллер навигации.

Ответ 4

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

Ответ 5

Добавление ограничений в верхнее пространство до верхнего руководства макета

введите описание изображения здесь