2012-06-04 2 views
0

"Item"이라는 클래스에 다음 메소드가 있습니다. 보시다시피 getImage는 클래스/정적 메서드이지만 다른 클래스 (Item Instance)에서 인스턴스 메서드를 반환하려고합니다. 왜 작동하지 않는지 모르겠다.다른 클래스의 클래스 메서드에서 인스턴스 메서드 호출? (목표 C)

+(UIImage*)getImage:(int)itemNumber { 
    UIImage *image = [ItemInstance getImage:itemNumber]; 
    return image; 
} 

그것은 클래스 메소드 + 된 GetImage이 ItemInstance에서 찾을 수 없음을 알려줍니다,하지만 난 인스턴스 방법 -getImage를 호출하려고 아닌 클래스 메소드 + 된 GetImage

답변

3

인스턴스 메소드를 호출하려면, 코드 아래

+ (UIImage*)getImage:(int)itemNumber { 
    ItemInstance *anInstance = [[ItemInstance alloc] init]; 

    UIImage *image = [anInstance getImage:itemNumber]; 

    return image; 
} 
+0

와우 당신은 인스턴스를 가지고 있습니다. 내가 그랬다 는걸 믿을 수 없어. 어리석은 실수. 정말 고맙습니다. –

2

사용 :

+(UIImage*)getImage:(int)itemNumber { 
    ItemInstance *obj = [[[ItemInstance alloc]init] autorelease]; 
    UIImage *image = [obj getImage:itemNumber]; 
    return image; 
} 
+0

도움에 감사드립니다. 다른 사람이 좀 더 상세한 답변을 주었지만 당신의 것이 옳았 고 감사했습니다. –

관련 문제