第二个开关更改第一个视图控制器的背景

时间:2017-06-14 03:32:01

标签: ios swift xcode swift3

我正在制作一个带有2个视图控制器的应用程序,我希望能够通过第二个视图控制器上的开关更改第一个视图控制器的背景和其他功能。我对编程很陌生,并且想知道它是如何完成的。我已设法更改第二个视图控制器上的元素,但无法弄清楚如何在第一个视图控制器上更改它们。这是我对第二个视图控制器的代码。我需要更改什么才能使第一个视图控制器背景也发生变化?

// set function for changing to dark mode
func updateMySwitchState(){
    if darkModeSwitch.isOn {
        self.view.backgroundColor = UIColor.black
        removeAds.textColor = UIColor.white
        aboutText.textColor = UIColor.white
        about.textColor = UIColor.white
        backButton.setImage(UIImage(named: "backinvert-40"), for: .normal)

    }
    else {
        self.view.backgroundColor = UIColor.white
        removeAds.textColor = UIColor.black
        aboutText.textColor = UIColor.black
        about.textColor = UIColor.black
        backButton.setImage(UIImage(named: "back-40"), for: .normal)
}
}

我将上述函数传递给开关的IBAction

2 个答案:

答案 0 :(得分:0)

.page {
    display: flex;
    width: 100%;
    margin: 0 auto;
}

您可以使用它来为所有视图控制器设置背景颜色

要为UILabel文本设置全局颜色,您可以

    UIView.appearance().backgroundColor = UIColor.blue

答案 1 :(得分:0)

你可以通过几种方式做到这一点。

1.you can use Delegation.
2.you can use Observer.
3.you can use Unwind segue.
4.you can also use callback method.