所以,我想创建我自己的迷你社交网络。在注册页面我有以下几行代码:swift:如何更新NSUserDefault?
var ns = NSUserDefaults.standardUserDefaults()
let array: [String] = ["\(login!)","\(password!)","\(nameSurname!)", "team", "university"] //team, university
ns.setObject(array, forKey: "\(login)")
我只是创建数组并将其设置为NSUserDefaults。
而且我还有一个页面,用户可以在其中更改有关它们的信息或数据,例如更改密码。在该页面中我有以下的代码行:
let login = loginTextField.text!
let password = passwordTextField.text!
let nameSurname = nameSurnameTextField.text!
let team = teamTextField.text!
let university = universityTextField.text!
let ns = NSUserDefaults.standardUserDefaults()
let array: [String] = ["\(login)","\(password)","\(nameSurname)", "\(team)", "\(university)"] //team, university course
ns.setObject(array, forKey: "\(login)")
我在这里创造新的数组,并设置这个新的数组KEY-登录。但是我在NSUserDefaults中的数据不会改变。我如何解决它?我该做什么?谢谢)
执行'ns.setObject(array,forKey:“\(login)”)''后,可能需要调用'ns.synchronize()'。 – Larme
'“\(login)”'表示来自登录文本字段的值而不是常量字符串'“login”'。这是真的吗? – vadian
它看起来并不像你以同样的方式处理两个数组。因为你使用数组作为在NSUserDefaults的关键,他们必须具有完全相同的代码各部分相同的价值观,否则,你不更新第二阵列中的第一阵列。 – fsb