上一节已经通过接口请求得到一个JSON串并实例化成为id类型。
当 id为NSDictionary
创建BaseModel用来实例化NSDictionary类型。
注意:
1 、NSInvocation在调用- (void)getReturnValue:(void )retLoc; retLoc 定义成NSObject类型是,APP崩掉,因为ARC:NSObject对象在getReturnValue的时候会被自动释放。可以写成如下:
2、子类继承父类BaseModel,定义属性与key键要一一对应,实例化对象调用-(id)initWithDataDic:(NSDictionary)data;
3、id不用做为属性名称,可以在子类重新赋值。
- (void)setAttributes:(NSDictionary *)dataDic{
[super setAttributes:dataDic];
self.cityId = dataDic[@“id”];
}
4、实例化子类如需要归档解档,需要在子类重写方法 - (NSDictionary*)attributeKey{
NSDictionary dic = @{
@“cityId”: @“cityId”,
@“city_date”: @“city_date”
};
return dic;
}
5、BaseModel定义如下两个方法,方便后面对数据的操作。
/*</