他の多くの人がオンラインで提案しているように、レイヤーのタッチを有効にしようとしています:
hudLayer = [[[CCLayer alloc] init] autorelease];
[self addChild:hudLayer z:3];
gameLayer = [[[CCLayer alloc] init] autorelease];
[self addChild:gameLayer z:1];
gameLayer.isTouchEnabled = YES;
rileyLayer = [[[CCLayer alloc] init]autorelease];
[self addChild:rileyLayer z:2];
pauseMenu = [[[CCLayer alloc] init] autorelease];
[self addChild:pauseMenu z:4];
[[[CCDirector sharedDirector] touchDispatcher] addTargetedDelegate:hudLayer priority:0 swallowsTouches:YES];
私のタッチメソッドはここにあります:
- (BOOL)ccTouchBegan:(NSSet *)touch withEvent:(UIEvent *)event {
return TRUE;
}
- (void)ccTouchEnded:(NSSet *)touch withEvent:(UIEvent *)event {
if (!paused) {
ratMove = 0;
}
}
ただし、これは継続的にエラーをスローします: キャッチされていない例外 'NSInternalInconsistencyException' によるアプリの終了、理由: 'Layer#ccTouchBegan override me'
このエラーをオンラインで見つけることができる唯一の理由は、ccTouchBegan 関数が含まれていない場合ですが、このエラーが表示される他の理由を知っている人はいますか?