如何为所有View Controller更改背景,标签和文本的颜色?

时间:2019-03-08 08:51:01

标签: swift xcode colors uiviewcontroller background

我有两个视图控制器,第一个是昼/夜模式按钮,如何为两个视图设置相同的背景颜色,文本颜色,标签背景颜色。我尝试使用 常数:

let colors = [UIColor.black, UIColor.white]
var index = 0


UIView.appearance().backgroundColor = colors[index]
UILable.appearance().backgroundColor = colors[index]
UITextField.appearance().backgroundColor = colors[index]
...

但是效果不佳。返回第一个视图后,它正在更改颜色,有时会卡住,并且不更新标签的文本颜色或背景颜色。

我的按钮日晚上:

@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],它工作良好。如何设置下一个视图的颜色?

0 个答案:

没有答案