У меня есть два контроллера вида, на первой у меня есть кнопка для дневного / ночного режима, как я могу установить одинаковый цвет фона, цвет текста, цвет фона меток для обоих видов.Я пытался использовать константы:
let colors = [UIColor.black, UIColor.white]
var index = 0
UIView.appearance().backgroundColor = colors[index]
UILable.appearance().backgroundColor = colors[index]
UITextField.appearance().backgroundColor = colors[index]
...
Но это не работает хорошо.Он меняет цвета, иногда застревает и не обновляет цвет текста или цвета фона для надписей после возврата назад при первом просмотре.
Моя кнопка dayNight:
@IBAction func dayNight(_ sender: Any) {
contentView.backgroundColor = colors[index]
firstView.backgroundColor = colors[index]
scrollView.backgroundColor = colors[index]
calculateOutlet.backgroundColor = UIColor.black
calculateOutlet.titleLabel?.textColor = UIColor.white
//UIView.appearance().backgroundColor = colors[index]
//UIScrollView.appearance().backgroundColor = colors[index]
navigationController?.navigationBar.barTintColor = colors[index]
navigationController?.navigationBar.titleTextAttributes = titleColors[index]
self.dayNightOulet.image = imagesBar[index]
self.dayNightOulet.tintColor = colorsOposite[index]
UIApplication.shared.statusBarStyle = navStatusColor[index]
//dayNight.set
if index == colors.count - 1 && index == colorsOposite.count - 1 {
index = 0
}
else {
index += 1
}
}
Для UIApplication.shared.statusBarStyle = navStatusColor [index] это работает хорошо.Как я могу установить цвета для следующего просмотра?