Скрытие строки состояния на одном ViewController в раскадровке
Возможно ли, чтобы строка состояния была скрыта только в одной сцене в раскадровке?
Например:
Я хочу, чтобы он был скрыт в "ViewController A", но при перемещении через segue
в "ViewController B" (например, a Navigation Controller
) будет отображаться строка состояния.
Похоже, вы можете отключить его во всем приложении, но как вы это делаете только для одного ViewController
?
Предложение ниже работает, однако при переключении на Navigation Controller
он, кажется, заставляет навигационную панель рисоваться в неправильном месте.
![nav bar bug]()
Ответы
Ответ 1
Как насчет
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[[UIApplication sharedApplication] setStatusBarHidden:YES];
}
- (void)viewWillDisappear:(BOOL)animated{
[[UIApplication sharedApplication] setStatusBarHidden:NO];
[super viewWillDisappear:animated];
}
Ответ 2
Просто поместите код на свой ViewController.m(в iOS7, Xcode 5)
- (BOOL) prefersStatusBarHidden {
return YES;
}
Ответ 3
Мое решение: в раскадровке выберите свою сцену и установите строку состояния: Нет в инспекторе атрибутов.