В моем приложении у меня есть 4 ViewController и в двух из них я меняю строку состояния от белого до черного, как это:быстрых ИОСЫ пытаются изменить цвет строки состояния на определенном ВК
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.Default
}
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.sharedApplication().statusBarStyle = .LightContent
}
Проблема заключается в том если я переключаюсь между двумя ViewController, которые имеют код выше строки состояния, сначала меняются на черный, что правильно, но затем он снова меняется на белый при входе в другой ViewController.
Как сохранить статусную строку на определенном экране ViewController?
Для этого также требуется добавление клавиши 'View на основе контроллера на основе состояния ', установленной в/YES в информации о проекте. plist' и может потребоваться выполнить пользовательскую реализацию '- (UIViewController *) childViewControllerForStatusBarStyle;' в подклассе контроллера корневого приложения приложения в зависимости от архитектуры вашей иерархии представлений. – markedwardmurray
Это не помогло, что сказал @markedwardmurray. Но can not я просто использую '' 'override func viewWillAppear (анимированный: Bool) { super.viewWillAppear (анимированный) UIApplication.sharedApplication(). StatusBarStyle = UIStatusBarStyle.Default }' '' в каждом VC? – user2722667
Вы бы подумали, но есть много особенностей с изменением глобального состояния строки состояния между контроллерами представлений. Более надежное отображение состояния панели управления на основе контроллера. В iOS 10 геттеры для переопределения на UIViewController фактически будут превращены в полные свойства. Метод глобального внешнего вида - это дни, когда ожидается, что приложение будет иметь одну цветовую схему: светлую или темную. Он не работает, чтобы переключать его с частотой после запуска приложения – markedwardmurray