我真的很抱歉,我意識到有幾個關於cocos2d觸摸檢測的問題(包括this答案幫了我一大堆忙),但我無法讓他們工作。我會評論我連接的答案,而不是問我自己的問題,但我沒有足夠的代表留下評論。在cocos2d中檢測觸摸*屏幕上的任何位置*
我想要做的就是當用戶點擊屏幕上的任何位置時停止動畫。
這裏是到目前爲止我的代碼:
- (BOOL)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"Touches Began");
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView: [touch view]];
location = [[Director sharedDirector] convertCoordinate: location];
CGRect mySurface = (CGRectMake(100, 100, 320, 480));
if(CGRectContainsPoint(mySurface, location)) {
NSLog(@"Event Handled");
return kEventHandled;
[[Director sharedDirector] stopAnimation];
}
return kEventIgnored;
NSLog(@"Event Ignored");
}
我都試過BOOL
和void
,ccTouchesBegan
和touchesBegan
,在圖層文件和文件cocosNode,和許多其他的事情。什麼都沒發生。日誌中沒有任何內容顯示,並且動畫繼續其快樂的小路。我究竟做錯了什麼?
我對什麼擴展意味着霧。我應該做@interface GameLayer:圖層或@interface節點:CocosNode ? –
Evelyn
2009-07-27 13:04:43