追加到UserDefaults阵列
问题描述:
首先我导入密钥保存在用户的默认现有的阵列 - 阵列1追加到UserDefaults阵列
var savedArray = UserDefaults.standard.array(forKey: "array1") as! [String]
var ns = UserDefaults.standard
然后
let savedValue = name
然后
savedArray.append(savedValue!)
然后我把它保存在key - array1
UserDefaults.standard.set(savedArray, forKey: "array1")
和同步
ns.synchronize()
但是,如果我去到另一个视图 - 控制和做到这一点
let alreadyShownarray = UserDefaults.standard.object(forKey: "array1") as! [String]
print (alreadyShownarray)
然后我得到不附加savedValue!
答
同一阵列尝试删除对象和添加新的那一个。
UserDefaults.standard.removeObject(forKey: "array1")
UserDefaults.standard.set(savedArray, forKey: "array1")
'UserDefaults.standard.set(array2,forKey:“array1”)'您正在保存'array2',但从未提及它。你的意思是'savedArray':'UserDefaults.standard.set(savedArray,forKey:“array1”)' ?只是错误的问题? – Larme
ns从哪里来? –
@RaduDiţăvar ns = UserDefaults.standard – adaminspaceship