【发布时间】:2011-11-27 03:45:24
【问题描述】:
我正在创建一个新类来表示场景中的标签,并试图弄清楚如何让它们响应触摸事件。我的代码非常简单,但是当我在 initFromNormalImage 方法中指定的选择器中设置断点时,断点永远不会被命中。这是我的代码...
接口文件
@interface FBLabel : CCNode {
CCMenuItemImage *_labelSprite;
CCLabelBMFont *_info;
}
-(id) initWithLabelFileName: (NSString*) filename andInfo: (NSString*) inInfo;
@property (nonatomic, retain) CCMenuItemImage *labelSprite;
@property (nonatomic, retain) CCLabelBMFont *info;
@end
实现文件
@implementation FBLabel
@synthesize labelSprite = _labelSprite;
@synthesize info = _info;
-(id) initWithLabelFileName: (NSString*) filename andInfo: (NSString*) inInfo{
self = [super init];
if(self){
_labelSprite = [CCMenuItemImage itemFromNormalImage:filename selectedImage:filename target:self selector:@selector(checkSelectedItem:)];
if(_labelSprite){
[self addChild: _labelSprite z:1];
self.contentSize = _labelSprite.contentSize;
}
//_info = [CCLabelBMFont labelWithString:inInfo fntFile:@"AppleLiGothic_Black18.fnt"];
_info = [CCLabelTTF labelWithString:inInfo fontName:@"Arial" fontSize:16.0];
if(_info){
_info.anchorPoint = ccp(0,0.5);
_info.position = ccp(-80,0);
[self addChild:_info z:2];
}
}
return self;
}
-(void) dealloc{
[_labelSprite release];
[_info release];
[super dealloc];
}
- (void)checkSelectedItem:(id)sender {
//THIS LINE OF CODE NEVER GETS EXECUTED
CCMenuItemImage *toggleItem = (CCMenuItemImage *)sender;
}
@end
非常感谢您的智慧!
【问题讨论】:
标签: iphone ios ipad cocos2d-iphone