2015-05-24 3 views
6

Я создаю приложение с Swift + AVPlayer и установил «Просмотр состояния панели управления на основе контроллера» на «YES». Проблема в том, что когда я запускаю плеер из моего UITableViewController/UINavigationController, панель навигации автоматически скрывает строку состояния, а панель навигации изменяется.Не изменяйте размер панели навигации при скрытии строки состояния

Вы можете увидеть, что я имею в виду здесь:

http://quick.as/eOXLiv45x

enter image description here

Есть ли способ, чтобы предотвратить это?

Cheers!

+0

я добавил изображение на свой вопрос, МФП как-то багги, возможно, загрузите его на лучший сайт, чтобы он был включен правильно. – luk2302

+0

Улыбается, похоже, работает здесь :) –

ответ

1

Хорошо, так это решение, которое я использовал в конце.

  1. Set «Вид на базе контроллера в строке состояния внешний вид» на «НЕТ»
  2. Override следующие функции в контроллере представления медиа
override func viewDidAppear(animated: Bool) { 
    super.viewDidAppear(animated) 
    UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: .Fade) 
} 

override func viewWillDisappear(animated: Bool) { 
    super.viewWillDisappear(animated) 
    UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: .Fade) 
} 
+0

Вы имели в виду 'viewDidAppear' вместо' viewDidDisappear' в первой функции? – aednichols

-1
- (BOOL)hidesBottomBarWhenPushed { 
return YES; 
} 

Вы можете попробовать это. Но я на 90% уверен, что эта проблема должна быть связана с некоторыми действиями, которые вы выполняете ... Если вы хотите предотвратить это, прочитайте эту функцию и отключите функцию hide или, возможно, создайте еще один метод для выполнения после того, как сообщите функции оставаться видимым.

+0

Я не толкаю, я представляю модально через ручную секцию, а стиль вида установлен на весь экран. –

Смежные вопросы