【发布时间】:2018-10-25 13:43:15
【问题描述】:
我想用 UserDefaults 保存 UISwitch 标签的状态。我的代码如下所示:
func viewDidAppear() {
mySwitch.setOn(userDefaults.standard.bool(forKey: "mySwitchValue"), animated: true)
}
func viewWillDesappear() {
UserDefaults.standard.set(mySwitch.isOn, forKey: "mySwitchValue")
}
但在应用程序中,当我离开切换视图并返回时,UISwitch 不是我转动它的样子。
【问题讨论】:
-
您的
viewWillDesappear方法不太可能被调用,因为它拼写错误。应该是viewWillDisappear。如果这是一个视图控制器类,你还需要override来实现这些功能,你应该调用super。 -
您的代码看起来不错。你能检查一下代码库中的其他地方是否影响了相同的 keyString 吗?或者,开关是否也受到代码库中其他地方的影响?
-
锰:不,其他地方没有影响..
-
rmaddy :我认为这是可能的,但是当我尝试覆盖时,据说我无法从它的 superdlass 或类似的东西中覆盖一个函数
-
这些方法属于什么类?他们真的被召唤了吗?
标签: ios swift nsuserdefaults uiswitch