这可能听起来很奇怪,但请考虑以下事项:
-(instancetype)initWithModel:(FRPPhotoModel *)photoModel{
self = [super initWithModel:photoModel];
if (!self) return nil;
// a lot of code here
return self;
}
实际上它会在行后面的错误下划线:
self = [super initWithModel:photoModel];
错误是:没有可见的@interface用于' RVMViewModel'声明选择器' initWithModel:'
它实际上引用了它声明的相同方法。当然,超类不知道它。但是,在一本书中我正在阅读下面的工作正常(这是相同的方法:
-(instancetype)initWithModel:(FRPPhotoModel *)photoModel {
self = [super initWithModel:photoModel];
if (!self) return nil;
@weakify(self);
[self.didBecomeActiveSignal subscribeNext:^(id x) {
@strongify(self);
[self downloadPhotoModelDetails];
}];
RAC(self, photoImage) = [RACObserve(self.model, fullsizedData) map:^id(id value) {
return [UIImage imageWithData:value];
}];
return self;
}
它工作得非常好。如何解决?