iOS, поддерживающая UIInterfaceOrientationPortrait, имеет проблему с statusBar

В моем приложении для iPhone (iOS 6-8) я поддерживаю только книжную ориентацию интерфейса, у него есть дополнительный компонент - просмотрщик фотографий, где вы можете просматривать фотографии в любой ориентации. Проблема в том, что если вы просматриваете фотографии, поворачиваете телефон в горизонтальное положение и закрываете просмотрщик фотографий, строка состояния остается горизонтальной (в левой или правой части приложения)

Чтобы вернуть его наверх, вам нужно либо полностью закрыть приложение через диспетчер задач, либо снова открыть компонент и повернуть его в портретное состояние.

Вопрос: как это сделать при закрытии строки состояния компонента обратно в исходное положение (портрет)?

У меня есть несколько идей, но я уверен, что есть лучшее решение

  1. Проверьте, исчезло ли средство просмотра фотографий, верните ориентацию, используя силу

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait]; or [[UIDevice currentDevice] setValue: [NSNumber numberWithInteger: UIInterfaceOrientationPortrait] forKey:@"orientation"];

  1. Создайте категорию для ориентаций, поддерживаемых компонентами и жесткими кодами, как показано ниже

- (NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskPortrait; }

0 ответов

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