나는 두 개의 다른 클래스로 MyObjectManager
를 서브 클래스서브 클래스 RKObjectManager 여러 번
MyObjectManager
에 RKObjectManager
에서 상속 MyObjectManager
라는 서브 클래스 I 초기화 RestKit (설정 기본 URL 등 등)를 가지고있다. 각기 다른 기능을 구현합니다
처음에는 UserManager sharedManager
으로 전화를 걸었습니다. 나중에 GameManager sharedManager
을 관련 함수와 함께 호출했지만 후자를 UserManager
으로 언급하므로 "인식 할 수없는 선택기를 인스턴스로 보냄"오류가 발생합니다.
RKObjectManager를 여러 번 서브 클래 싱하는 것이 허용된다는 가이드 라인을 읽었습니다. 무엇이 없습니까?
MyObjectManager 구현 : RKObjectManager +sharedManager
클래스의 방법이기 때문이다
static MyObjectManager *sharedManager = nil;
@implementation MyObjectManager
+ (instancetype)sharedManager {
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
NSString *baseUrl = [NSString stringWithFormat:@"http://ip/api"];
NSURL *url = [NSURL URLWithString:baseUrl];
sharedManager = [self managerWithBaseURL:url];
sharedManager.requestSerializationMIMEType = RKMIMETypeJSON;
[sharedManager setupRequestDescriptors];
[sharedManager setupResponseDescriptors];
});
return sharedManager;
}
sharedManager 함수가 정의되어 있습니까? GameManager sharedManager를 사용하려면 해당 클래스 또는 수퍼 클래스 인 MyObjectManager 또는 RKObjectManager에 정의되어야합니다. – rishi
@rishi 편집보기 – Shai