UserDefaults数组恢复为空

时间:2019-06-05 03:08:49

标签: ios arrays swift nsuserdefaults

我正在尝试将对象数组设置为用户默认值,但没有追加。

声明数组的var    在我的AllFormulas类中:

let defaults = UserDefaults.standard    
static var lineOne1 = UserDefaults.standard.array(forKey: "line1") as? [Formulas] ?? []
init() {
//formula names and values 

然后我从一个空数组开始

lineOne1 = []
}

附加到数组    在我的AddViewController类中:

 func lineOneAdd() {
    let line1 = lineOne1
    lineOne1.append(formulaAppend)
    defaults.set(line1, forKey: "line1")
    defaults.synchronize()

}

然后在视图中调用userDefaults确实加载了   MainViewController类:

line1[indexPath.row] // as my cellForRowAt in tableView


print(line1)
//which prints : []

知道我在做什么错吗?预先感谢

1 个答案:

答案 0 :(得分:1)

您似乎要附加到错误的数组:

lineOne1.append(formulaAppend)

应该是:

line1.append(formulaAppend)