【发布时间】:2013-07-12 12:13:23
【问题描述】:
我正在使用键值编码来简化模型类的更新实例:
@interface NewsItem : NSObject
{
}
@property (nonatomic, copy) NSString *title;
@property (nonatomic, copy) NSString *description;
@property (nonatomic, copy) NSString *link;
@property (nonatomic, copy) NSString *date;
使用:
SEL selectorName = NSSelectorFromString(elementName);
if ([self.newsItem respondsToSelector:selectorName])
{
NSString *sanitisedElement = [self sanitiseElement:self.currentElementData];
[self.newsItem setValue:sanitisedElement forKey:elementName];
}
这很好用,但“描述”属性对我来说并不“有味道”,因为它覆盖了基本的 NSObject 描述 getter (+ (NSString *)description)。如果现在调用描述 getter,它将在调用者期望类的描述时返回不相关的信息。
是否可以安全地为此类进行键值编码(假设我已通过外部数据源绑定到这些属性名称)?或者更改属性名称并手动检查键/设置值是否明智?
【问题讨论】:
标签: objective-c properties key-value-coding