こんにちは私は私のALAsset URL
セーブを持っていますNSMutableArray
、
"ALAsset - Type:Photo, URLs:assets-library://asset/asset.JPG?id=119A0D2D-C267-4B69-A200-59890B2B0FE5&ext=JPG",
"ALAsset - Type:Photo, URLs:assets-library://asset/asset.JPG?id=92A7A24F-D54B-496E-B250-542BBE37BE8C&ext=JPG",
"ALAsset - Type:Photo, URLs:assets-library://asset/asset.JPG?id=77AC7205-68E6-4062-B80C-FC288DF96F24&ext=JPG
エラーが発生したためNSMutableArray
、保存できません
でした。これを使用することを考えています。NSUserDefaults
Note that dictionaries and arrays in property lists must also contain only property values.
- (void)encodeWithCoder:(NSCoder *)encoder {
//Encode properties, other class variables, etc
[encoder encodeObject:self.selectedPhotos forKey:@"selectedPhotos"];
}
- (id)initWithCoder:(NSCoder *)decoder {
if((self = [super init])) {
//decode properties, other class vars
self.selectedPhotos = [decoder decodeObjectForKey:@"selectedPhotos"];
}
return self;
}
次に、次のコードで保存して取得します。
- (void)saveCustomObject:(MyCustomObject *)obj {
NSData *myEncodedObject = [NSKeyedArchiver archivedDataWithRootObject:obj];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:myEncodedObject forKey:@"myEncodedObjectKey"];
}
- (MyCustomObject *)loadCustomObjectWithKey:(NSString *)key {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSData *myEncodedObject = [defaults objectForKey:key];
MyCustomObject *obj = (MyCustomObject *)[NSKeyedUnarchiver unarchiveObjectWithData: myEncodedObject];
return obj;
}
しかし、私はどういうわけかそれを完全に理解していません、それでも私のコードでクラッシュします。方法がわからない。そして、NSUserDefaultsに保存できませんでした。誰かが助けてくれることを願っています。本当にしばらくの間、これに問題がありました。誰かが私にそれを保存してから正しい方法で取得する正しい道を案内してくれることを願っていますNSUserDefaults
。次に、に戻りNSMutableArray
ます。