2012-07-09 2 views
0

NSImage class reference에는 방법 initWithData가 있지만 xCode가 존재하지 않는다고 말하는 이유는 무엇입니까?NSImage initWithData를 찾을 수 없습니까?

NSData *imgData = [[imageView image] TIFFRepresentation]; 
fotoImg = [NSImage initWithData:imgData]; 

그리고 난 경고를 얻을 :

나는 다음과 같이 사용

Class method '+initWithData:' not found (return type defaults to 'id') 

왜 이런 일이 있습니까?

+0

'[[NSImage alloc] initWithData..' –

답변

4

해당 클래스의 인스턴스에서 호출해야 할 때 클래스에 initWithData을 호출하고 있습니다. 다음을 수행하십시오 : [[NSImage alloc] initWithData:imgData];

회원 기능과 클래스 기능 (또는 Obj C 용어 "메시지")의 차이점을 배우는 것이 매우 중요합니다. 나는 http://www.amazon.de/Programming-Objective-C-Automatic-Reference-Developers/dp/0321811909/ref=pd_sim_sbs_eb_1/276-1733140-9413556을 추천한다.

+0

Objective-C에는 "정적 인 방법"이 없습니다. 클래스 메소드 및 인스턴스 메소드입니다. 호출은 항상 동적입니다. – newacct

+0

알았어. 내가 바로 잡았어. 나는 동적 인 것에 반대되는 정적을 의미하지는 않았지만 당신이 맞습니다. 올바른 용어는 아닙니다. –

+0

하나님, 저는이 문제를 겪고 있었지만 NSImage initWIthContentsOfFile을 사용하여 정말로 많은 시간을 절약했습니다. iOS의 [UIImage imageWithContentsOfFile]에서 코드를 변환하면서 클래스 및 메서드 이름을 변경하여 작동한다고 가정했습니다. 뇌의 방귀 모멘트. 바라건대 누군가가 똑같은 이슈를 가지고 있다면 그들은이 논평을보기가 어려울 것입니다. – user3062913