我已经将字典存储到NSUserDefaults中,如下所示:
standardDefaults.setObject(switchStater, forKey: "startUp")
switchStater
对象是存储每个rowIndex
的{{1}}和Bool
值的字典。我可以打印出UISwitch
中存储的信息,如下所示:
NSUserDefaults
这是我确认数据存储正确的方法。我将let test = standardDefaults.objectForKey("startUp")
print(test)
放在.setObject
的子类中,因为子类在操作时会写UITableViewController
。然后我调用超类UISwitch
中的.objectForKey
。
有没有办法测试viewDidLoad
存储的NSUserDefault
,如果不能测试测试,那么for init
处于用户重新加载后的位置应用程序?
感谢您的帮助。
答案 0 :(得分:2)
您可以使用Dictionary
从NSUserDefaults
检索存储的userDefaults.dictionaryForKey("startUp")
,然后循环显示字典中的键/值,并按照以下方式正确设置UISwitch
:
let dictionary = userDefaults.dictionaryForKey("startUp")!
for (key, value): (String, AnyObject) in dictionary {
let switch = value as! UISwitch
print(key)
print(switch.on)
}