EDIT
Спасибо всем за быстрый ответ.
Комментарий jtbandes заставил меня найти проблему.
мюзикл_note_instance был объявлен в интерфейсе как CCSprite * мюзикл_note_instance и примечание MusicalNote * мюзикл_note_instance, так как его супер был CCSprite, код работал, но отображались предупреждения о семантике. Теперь я исправил изменение CCSprite на MusicalNote, и больше не отображаются предупреждения.
PS: я отвечаю здесь, потому что я новый пользователь и не могу ответить на мой вопрос меньше, чем за 8 часов.
Я новичок в программировании игр для какао и 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
но когда я пытаюсь сделать [music_note_instance playNote]; или [music_note_instance setSoundFile: @ "sound.mp3"]; я получаю это предупреждение в XCode 'CCSprite 'может не отвечать на' playNote ' Я просто не могу понять, почему = /