【发布时间】:2011-04-21 15:17:29
【问题描述】:
我需要覆盖 NSMutableDictionary 的 valueForKey: 方法。我想检查一个特定的值,做一些操作并返回它。有什么我应该注意的地方吗?如有错误请指正,例如:
- (id)valueForKey:(NSString*)key {
id val = [super valueForKey:key];
if([val isKindOfClass:[NSString class]] && [val isEqualToString:@"<null>"]) {
return @"No Value";
}
else {
return val;
}
}
谢谢
【问题讨论】:
-
@moon:类别的问题是你不能干净地调用你替换的任何东西的原始实现;见stackoverflow.com/questions/1085479/…
-
这听起来像是数据转换器的工作,实际上。
-
xm 确实如此,但我也将它们与 IB 绑定、TableViews 等一起使用,听起来我需要更多代码来替换这种方式
标签: objective-c overriding nsmutabledictionary