我正在我的本地对象类型上实现我的属性setter方法,所以当RestKit从JSON有效负载设置我的对象值时,我可以做一些额外的工作;但是,在我确定已经确定了其中3个属性之后,我还需要做一些工作。
,而不是在每个setter执行类似检查以查看已设置的属性...
-(void) setSomeValue:(NSNumber *someValue){
self.someValue = someValue;
//do some extra stuff here
if(self.otherValue){
//do some calculation using someValue and otherValue
}
}
-(void) setOtherValue:(NSNumber *otherValue){
self.otherValue = otherValue;
//do some extra stuff here
if(self.someValue){
//do some calculation using someValue and otherValue
}
}
我是否可以实现一些方法,我肯定知道已经为一组对象的一个实例映射了两个或所有属性?
或者至少有一种方法可以指定对象的映射顺序,这样我可以确保在依赖其他对象之前设置哪些顺序?
答案 0 :(得分:2)
在映射操作完成后,您可以迭代遍历所有对象,而不是实现setter:
[RKObjectManager sharedManager] getObjectsAtPath:@"path/to/my/objects" parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
NSArray *objects = mappingResult.array;
for (id obj in objects) {
if ([obj isKindOfClass:[Entity class]]) {
Entity *entity = obj;
if (entity.someProperty && entity.anotherProperty) {
//do stuff
}
}
}
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
}];