-1
Я использую ObjectMapper для сопоставления ответа JSON с моего сервера. Вот моя модель данных.Как сохранить весь объект в NSUserDefaults
class HomeStats: Mappable {
// MARK: - Constants & Variables
var todayText: String
var pointsText: String
var todayActivitiesText: String
var totalPointsText: String
var rewardsText: String
var myStatsText: String
var motivationalMessage: String
var todaySteps: String
var todayStepPoints: String
var stepsText : String
var todayTotalPoints: Double
var allPoints: String
var userRegistrationDate: String
var firstTrackerConnectionDate: String
var userID:Int
.
.
.
И так далее. Я использую это в моем классе как
// init
let allStats = Mapper<HomeStats>().map([:])!
// usage
if let data = Mapper<HomeStats>().map(result){ // result is my JSON responce
self.allStats = data;
}
Теперь, как я могу хранить весь мой объект allStats в этом случае NSUserDefaults
и получить его позже?
http://stackoverflow.com/questions/2315948/how-to-store-custom-objects -in-nsuserdefaults Посмотрите на это –
Я видел эти ответы, но они не кажутся таким оптимизированным подходом ко мне, потому что я должен сохранить everyThing с помощью отдельного ключа. Я хочу сохранить весь объект против ключа и просто вернуть его. – Byte
NSUserDefaults может хранить только - NSArray - NSData - NSDictionary - NSNumber - NSString Кроме того, NSArray или NSDictionary должен содержать только типы, перечисленные выше. Поэтому вам нужно преобразовать свою структуру в NSDictionary или сохранить ответ JSON вместо – Roman