我有一个名为trip
的结构:
struct trip {
var name: String
var description: String
var elements: [elementType] = []
}
elementType
是在协议中声明的类型。
然后我宣布了一个名为trips
的数组:
var trips: [trip] = []
问题是我必须保存trips
数组才能在关闭应用后显示项目。首先,我尝试使用NSUserDefaults,但它只能保存少量类型,Any
(结构类型)不是其中之一。
如何保存和恢复此阵列?
答案 0 :(得分:0)
您只能在NSData
中保存NSString
,NSNumber
,NSDate
,NSArray
,NSDictionary
和NSUserDefaults
类型。
因此,您可以在struct中添加init方法,以便可以对正在创建的数据进行编码,然后将其存储在NSUserDefaults
中。