[英]Save selected items in array of objects to UserDefaults in swift 4
[英]Save array of items in UserDefaults - iOS 12
我想在UserDefaults中保存一個TreeWithPos
對象數組。 我找到的每個解決方案(例如Data對象)都無法在iOS 12中運行。我該怎么辦? 我已經試過了:
try? defaults.set(NSKeyedArchiver.archivedData(withRootObject: treesArr, requiringSecureCoding: false), forKey: "trees")
您可以嘗試將可Codable
協議與JSONEncoder()
和JSONDecoder()
struct SaveItem : Codable {
var name:String
}
//
let arr = [SaveItem(name: "name1"),SaveItem(name: "name2")]
do {
// write
var data = try JSONEncoder().encode(arr)
UserDefaults.standard.set(data, forKey: "Key")
// read
let content = UserDefaults.standard.data(forKey: "Key")
let saved = try JSONDecoder().decode([SaveItem].self, from: content!)
print(saved)
}
catch {
print(error)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.