我已经像这样将字典存储到NSUserDefaults中:
standardDefaults.setObject(switchStater, forKey: "startUp") switchStater对象是存储每个rowIndexBoolUISwitch值的字典。我可以像这样打印出存储在NSUserDefaults中的信息:

let test = standardDefaults.objectForKey("startUp")
        print(test)

这就是我确认数据是否正确存储的方式。我把.setObject放在UITableViewController的子目录中,因为子类在被操纵时会写UISwitch。然后,我在 super class 的.objectForKey中调用viewDidLoad

如果没有,有没有办法测试存储在NSUserDefault循环中的for init,我该如何测试测试,以便UISwitch处于用户重新加载应用程序后的位置?

谢谢您的帮助。

最佳答案

您可以使用DictionaryNSUserDefaults中检索存储的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)
}

关于ios - 有没有一种方法可以处理NSUserDefaults存储的信息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33556521/

10-14 23:37
查看更多