我将 NSObject 子类的公共(public)接口(interface)定义为,
@interface MyObject : NSObject
{
NSString *_key1;
NSString *_key2;
NSString *_key3;
}
- (id)initWithDict:(NSDictionary *)dict;
@end
是否有实现 initWithDict: 方法的技巧,以便我可以传递定义为
的 NSDictionary{"key1" : "value1", "key2" : "value2", "key3" : "value3"}
init 方法可以设置相关的实例变量及其相应的“值”?
最佳答案
你必须使用 KVC .
NSDictionary *dict = @{@"key1" : @"value1", @"key2" : @"value2", @"key3" : @"value3"};
for (NSString *key in [dict allKeys]) {
[self setValue:dict[key] forKey:key];
}
关于objective-c - 从 NSDictionary 将实例变量初始化为键/值对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12113224/