UIStatusBarStyle lightContent не учитывается для модально представленного контроллера представления
Я пытаюсь изменить цвет текста строки состояния с черного на белый на контроллере представления с модальным представлением, встроенным в контроллер навигации с именем ChildViewController
Я использую рамки Хамелеон для цветов.
Я могу изменить цвет фона без проблем, используя:
guard let navBar = navigationController?.navigationBar else {fatalError("Navigation controller does not exist.")}
guard let navBarColour = UIColor(hexString: colourHexCode) else { fatalError()}
navBar.barTintColor = navBarColour
navBar.tintColor = ContrastColorOf(navBarColour, returnFlat: true)
navBar.largeTitleTextAttributes = [.foregroundColor : ContrastColorOf(navBarColour, returnFlat: true)]
Я пробовал несколько комбинаций ниже в viewWillAppear
& viewDidLoad
в ChildViewController
self.modalPresentationCapturesStatusBarAppearance = true
UIApplication.shared.statusBarStyle = .lightContent
setNeedsStatusBarAppearanceUpdate()
setStatusBarStyle(.lightContent)
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
Я даже попробовал хамелеонов self.setStatusBarStyle(UIStatusBarStyleContrast)
но опять ничего не работает.
В моем Info.plist
Я имею:
View controller-based status bar appearance = YES
А в общих настройках проекта в разделе " Информация о развертывании" стиль строки состояния установлен на Default
Ориентация на iOS 11.4 с Swift 4.1
Что я делаю неправильно?