CCSprite可能无法响应“方法”

时间:2011-06-26 20:33:33

标签: iphone objective-c cocos2d-iphone

修改

谢谢大家的快速回复。

jtbandes的评论让我发现了问题。

musical_note_instance正在接口中声明为CCSprite * musical_note_instance,并注意MusicalNote * musical_note_instance,因为它的超级代码是CCSprite,但是正在显示有关语义的警告。现在我修改了将CCSprite更改为MusicalNote并且不再显示警告。

PS:我在这里回答是因为我是新用户,并且在8小时内无法回答我的问题。


我是cocoa和iPhone游戏编程的新手,所以我在我的项目中使用了cocos2d-iphone框架。

一切都很顺利,但我有一个问题,我可以找出原因。我创建了这个类:

#import <Foundation/Foundation.h>
#import "cocos2d.h"
#import "SimpleAudioEngine.h"

@interface MusicalNote : CCSprite {

    NSString *note;
    NSString *soundFile;
    unsigned int noteValue;

}

+ (id) init;
+ (id) initWithFile:(NSString *)file;
+ (void) description;

- (void) playNote;


@property (nonatomic) unsigned int noteValue;
@property (nonatomic, retain)NSString *note;
@property (nonatomic, retain)NSString *soundFile;

@end

但是当我尝试 [musical_note_instance playNote]; [musical_note_instance setSoundFile:@“sound.mp3”]; 我在XCode 中收到此警告'CCSprite'可能无法响应'playNote'我只是想不通为什么= /

1 个答案:

答案 0 :(得分:1)

我猜你有一个地方你有一个变量类型的CCSprite你现在也要发送你的新playNote消息了。但是playNote只存在于你的新类MusicalNote的实例中。您是否已将变量类型更改为“MusicalNote *”?