Перед тем как начать, я хотел бы извиниться, если этот вопрос дублируется, поскольку я видел много вопросов, но я не могу найти то, что мне нужно.
Я хочу создать глобальный статус, навигацию, стиль панели инструментов и, если возможно, нижнюю часть представления на iPhone X и далее только из моего делегата приложения, поэтому мне не нужно задавать его для каждогоViewController.
Пока у меня есть:
extension UIApplication {
var statusBarView: UIView? {
return value(forKey: "statusBar") as? UIView
}
}
и функция, вызываемая внутри метода didFinishLaunchingWithOptions
private func setupNavigationBarStyle(){
UIApplication.shared.statusBarView!.backgroundColor = UIColor.AppColors.statusBar
UIApplication.shared.statusBarStyle = .lightContent
UINavigationBar.appearance().barTintColor = .brown
UINavigationBar.appearance().tintColor = .green
UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.yellow]
UINavigationBar.appearance().isTranslucent = false
}
Я прикрепляю фиктивный дизайн для моего контроллера представления с помощью раскадровки
и окончательный результат
Несмотря на то, что я не лучший дизайн, у меня есть 3 вопроса.
UIApplication.shared.statusBarStyle = .lightContent устарела и отображает предупреждение, а я этого не хочу.
Как изменить цвет длявнизу для iPhone X и далее (в настоящее время красным и там, где находится горизонтальная линия).
Могу ли я изменить statusBarStyle для другого, не определенного, и изменить цвет текста в моей строке состояния Фиолетовый?