0

내가 내 .PCH 파일이이 컴파일 :엑스 코드 CodeSense 오류 - 속성 유형의 객체를 찾을 수 없습니다, 그러나 프로젝트는

#import "UIViewController+Loader.h" 

범주의 구현은 다음과 같습니다

static char kUIViewControllerBaseViewKey; 

@implementation UIViewController (Loader) 

- (void)setLoader:(LoaderView *)loaderView { 
    objc_setAssociatedObject(self, &kUIViewControllerBaseViewKey, loaderView, OBJC_ASSOCIATION_RETAIN_NONATOMIC); 
} 

- (LoaderView *)loader { 
    LoaderView *loaderView = (LoaderView *)objc_getAssociatedObject(self, &kUIViewControllerBaseViewKey); 
    if (!loaderView) { 
     loaderView = [[LoaderView alloc] initWithView:self.view]; 
     [self.view addSubview:loaderView]; 
     [self setLoader:loaderView]; 
    } 
    return loaderView; 
} 

@end 

문제는 모든 뷰 컨트롤러에서 다음과 같은 경우입니다.

[self.loaderView doSomething]; 

Xcode에서이 오류를 표시합니다. Property 'loaderView' not found on object of type MyViewController

그러나 프로젝트가 잘 컴파일되고 loaderView의 doSomething : 메서드가 제대로 작동합니다. Xcode에서 이러한 오류를 표시하지 않게하려면 어떻게해야합니까?

답변

0

많은 머리가 긁힌 후 "미리 컴파일 된 머리글 공유 증가"라는 빌드 설정을 발견했습니다. 이 값을 YES로 변경하면 문제가 해결됩니다. 이것이 무엇을하는지에 대한 설명을 읽은 후에도, 나는 왜 이것이 문제를 해결하는지 이해하지 못합니다. 그러나 그것은 고쳐졌습니다.

+0

이것은 나를 위해 작동하지 않았다. – Gomfucius