我正在尝试将对象数组设置为用户默认值,但没有追加。
声明数组的变量 在我的 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()
}
然后在 View 中调用 userDefaults 确实加载了 主视图 Controller 类:
line1[indexPath.row] // as my cellForRowAt in tableView
print(line1)
//which prints : []
知道我做错了什么吗?提前致谢
最佳答案
你似乎追加到错误的数组:
lineOne1.append(formulaAppend)
应该是:
line1.append(formulaAppend)
关于ios - UserDefaults 数组返回为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56453799/