我有一个名为 mycallback 的类:
[mycallback setValue:[code objectForKey:@"abc"] forKey:@"abc"];
我的很多控制器都调用它。问题是我从 mysql 数据库中提取数据并将其发送到 mycallback。所以我可能不知道关键是什么。除此之外,我不想在 mycallback 类中声明实例变量,因为我希望它分开。
不幸的是,如果代码在上面运行,我会收到以下消息:
exception 'NSUnknownKeyException', reason: '[<CallbackClass 0x7b6c5d0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key fence.'
所以我想动态设置键而不是在 mycallback 中。所以我为 NSDictionary 创建了一个类别并添加了 valueForUndefinedKey 方法:
- (id)valueForUndefinedKey:(NSString *)key
{
NSLog(@"This key not being called %@", key);
return nil;
}
但是 1) valueForUndefinedKey 没有被调用,并且 2) 我不确定要放什么来使错误消失。
感谢您的回复。