0

「Item」という名前のクラスに次のメソッドがあります。ご覧のとおり、getImageはクラス/静的メソッドですが、DIFFERENTクラス(アイテムインスタンス)からインスタンスメソッドを返すようにしたいです。なぜ機能しないのかわかりませんか?

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

クラスメソッド+getImageがItemInstanceに見つからないことがわかりますが、クラスメソッド+ getImageではなく、インスタンスメソッド-getImageを呼び出そうとしています。

4

2 に答える 2

3

インスタンス メソッドを呼び出すには、インスタンスが必要です。

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

    UIImage *image = [anInstance getImage:itemNumber];

    return image;
}
于 2012-06-04T05:39:55.573 に答える
2

以下のコードを使用します。

+(UIImage*)getImage:(int)itemNumber {
     ItemInstance *obj = [[[ItemInstance alloc]init] autorelease];
     UIImage *image = [obj getImage:itemNumber];
     return image;
}
于 2012-06-04T05:40:29.693 に答える