NSDictionary に値を保存して取得しようとしています
オブジェクト
#import <Foundation/Foundation.h>
@class ATTTEstOBJ;
@interface ATTTEst : NSObject
@property (nonatomic, retain) NSString *string1;
@property (nonatomic, retain) NSString *string2;
@property (nonatomic, retain) ATTTEstOBJ *obj1;
@end
@interface ATTTEstOBJ : NSObject
@property (nonatomic, retain) NSString *string3;
@property (nonatomic, retain) NSString *string4;
@property (nonatomic, retain) NSString *array1;
@end
値を保存して取得するには、適切にエンコードする必要があることはわかっていますが、この場合、それは複合オブジェクトであり、対処方法がわかりません。
- (void) encodeWithCoder: (NSCoder *)coder
TLDR、複合値を辞書に保存して元に戻す方法
ATTTest
辞書に保存して取得したい。
編集:詳細な説明
ATTTEst *test=[[ATTTEst alloc]init];
test.string1=@"a";
test.string2=@"b";
ATTTEstOBJ *obj=[[ATTTEstOBJ alloc]init];
obj.string3=@"c";
obj.string4=@"d";
test.obj1=obj;
NSMutableDictionary *dict=[[NSMutableDictionary alloc]initWithCapacity:3];
[dict setObject:test forKey:@"test"];
NSLog(@"%@",dict);
ATTTEst *tester=[dict objectForKey:test];
NSLog(@"%@",tester.obj1.string3);
ITはnull.as出力を示しています。値をcとして取得したいtester.obj1.string3