У меня модальное файл сущности, как показано ниже,Сохранение пользовательских NSObject в NSUserDefaults
import UIKit
class MyProfile: NSObject {
var userName : String = ""
func initWithDict(dict: NSMutableDictionary) {
self.userName = dict.objectForKey("username") as! String
}
}
Saving, что объект путем кодирования, как показано ниже,
let myDict: NSMutableDictionary = ["username": "abc"]
let myEntity:MyProfile = MyProfile()
myEntity.initWithDict(myDict)
let userDefaults = NSUserDefaults.standardUserDefaults()
let encodedData = NSKeyedArchiver.archivedDataWithRootObject(myEntity)
userDefaults.setObject(encodedData, forKey: "MyProfileEntity")
userDefaults.synchronize()
Получение, что сохраненный объект, как показано ниже,
let myEntity:MyProfile = MyProfile()
let userDefaults = NSUserDefaults.standardUserDefaults()
guard let decodedNSData = userDefaults.objectForKey("MyProfileEntity") as? NSData,
myEntity = NSKeyedUnarchiver.unarchiveObjectWithData(decodedNSData) as? MyProfile!
else {
print("Failed")
return
}
print(myEntity.userName)
Это не работает, имеет сбои и много ошибок синтаксиса, я новичок в быстром,
Он показывает некоторые синтаксические ошибки, такие как Определение конфликтует с предыдущим значением в строке unarchiveObjectWithData
. Если я исправлю эту ошибку, то во время получения объекта от userdefaults он сбой.
Может ли кто-нибудь предложить, как я могу его решить?
Какие ошибки вы получаете? – ryantxr
@ryantxr, он показывает некоторые синтаксические ошибки, такие как конфликты определения с предыдущим значением ..... – NAZIK
Если вам нужна помощь, вам нужно быть конкретным. Обновите свой вопрос с помощью полных и точных сообщений об ошибках и укажите точные строки, вызывающие ошибки. – rmaddy