use*_*888 3 nsuserdefaults swift xcode6
我需要保存在NSUserDefaults数组或其他数据结构中以使用以下格式保存对象:
name = "myName", lastName = "myLastName"
Run Code Online (Sandbox Code Playgroud)
我试图用一组数组来做这件事,但这无法保存NSUserDefaults.
现在我尝试使用具有结构的自定义类来创建对象并附加到数组,但在尝试将其保存到时也会出错NSUserDefaults.我需要保存这个结构,但我不知道什么是正确的形式.我该怎么做?
var taskMgr: TaskManager = TaskManager()
struct task {
var name = "Un-Named"
var lastName = "Un-lastNamed"
}
class TaskManager: NSObject {
var tasks : [task] = []
func addTask(name : String, lastName: String){
tasks.append(task(name: name, lastName: desc))
}
}
Run Code Online (Sandbox Code Playgroud)
NSUserDefaults预计存储的对象全部是属性列表对象,即实例NSArray,NSDictionary,NSString,NSNumber,NSData,或NSDate.你的结构不是其中之一.在存储对象之前,您需要将对象转换为属性列表类型.一种方法是使用NSKeyedArchiver和NSCoding协议将结构写入一个实例NSData.
| 归档时间: |
|
| 查看次数: |
1530 次 |
| 最近记录: |