我想从另一个 View Controller
检查 UISwitch
的状态。如果 switch
是 on
,那么我希望 View
的 backgroundColor
是红色的,否则它应该是绿色的。我尝试使用 UserDefaults
,但我不知道从什么开始。任何帮助将不胜感激!
最佳答案
注意:这是 SWIFT 3 的版本:
首先,我将开关
的初始状态
设置为关闭。我添加了一个按钮,它将我们带到 secondViewController 并检查开关的状态。这是我的代码(用于包含开关的 View Controller ):
@IBOutlet weak var switch1: UISwitch!
let defaults = UserDefaults.standard
var switchON : Bool = false
@IBAction func checkState(_ sender: AnyObject) {
if switch1.isOn{
switchON = true
defaults.set(switchON, forKey: "switchON")
}
if switch1.isOn == false{
switchON = false
defaults.set(switchON, forKey: "switchON")
}
}
对于secondView
:
let defaults = UserDefaults.standard
override func viewDidLoad() {
super.viewDidLoad()
if defaults.value(forKey: "switchON") != nil{
let switchON: Bool = defaults.value(forKey: "switchON") as! Bool
if switchON == true{
self.view.backgroundColor = UIColor.red()
}
else if switchON == false{
self.view.backgroundColor = UIColor.green()
}
}
}
关于ios - 如何从 SWIFT 3 中的另一个 ViewController 检查 UISwitch 的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38811706/