UISwitch似乎没有显示正确的状态
问题描述:
我在页面上有四个UISwitch。 我正在测试AnimalSwitch,看它是否有效。 默认情况下,当我关闭它并转到不同的视图控制器并返回时,测试标签表示它仍然关闭,但开关图像显示它已打开。 这是开关的代码试图改变(其他人我没有动过,直到我修复这一个)。 其他开关命名相同,只有“动物”一词更改。UISwitch似乎没有显示正确的状态
let defaults = UserDefaults.standard
AnimalSwitch.setOn(true, animated: true)
if (defaults.object(forKey: "AnimalswitchState") != nil) {
AnimalSwitch.isOn = defaults.bool(forKey: "AnimalswitchState")
print("switched")
}
答
您确定userDefaults
已更新?请记住,您需要synchronize()
才能应用更改。而且,你什么时候更新开关和标签?您应该使用交换机的事件值更改来更新标签。
+0
我认为同步()没有更多的需要在迅速 –
+0
我查了它,你的权利从版本8.0不再需要。 – Femkeo
它已修复!问题是我的代码中的其他地方谢谢! – Femkeo