특정 XML 파일을 처리하는 범주로 내 클래스 중 하나를 확장했습니다. 클래스 ListBuilder.m
에서 나는 목록이 작성된 후에 항목 목록을 단순히 순환하는 newsloop
이라는 메소드를 정의했습니다.Objective-C 메서드 범주 호출 질문 :
-(void)newsloop;
은 ListBuilder.m
으로 선언 된 개인 범주로 선언됩니다. (이 중요한 경우, 4)
-(void) parserDidEndDocument: (NSXMLParser *)parser {
if ([self.newslist count] >= 2)
[self newsloop]; // warning flagged here
else
// to some other default stuff
}
엑스 코드를 경고 Method '-newsloop' not found (return type defaults to 'id')
을 보여줍니다 목록이 구축되고 나면 내가 newsloop 전화 어디에 내 카테고리, ListBuilder+XMLParser.m
에서는
이다.
내가 맞으면 카테고리가 확장되는 클래스에 정의 된 모든 메소드에 액세스 할 수 있으므로 경고가 발생하는 이유는 무엇입니까?
내가 읽은 문서에는 그 부분이 언급되어 있지 않았습니다. 어쩌면 감독일까요? –
모든 상황이 문서에있는 것은 아니지만 헤더 파일을 사용하여 클래스 기능을 해당 클래스의 사용자에게 전달할 수 있습니다. 비공개 카테고리는 헤더에 없으므로 클래스 구현 파일 외부의 코드는 알지 못합니다. –