Cocos2D for iPhone應(yīng)用開發(fā)學(xué)習(xí)點滴
Cocos2D for iPhone應(yīng)用開發(fā)學(xué)習(xí)點滴是本文要介紹的內(nèi)容,講解了Cocos2D的操作,不多說,我們來看內(nèi)容。
除了 Layer 可以接受觸摸事件, 在Cocos2D 0.8以后加入一個新的特性,從而讓所有的對象都可以接受觸摸事件. 發(fā)現(xiàn)大家都不怎么用這個方法,這兒簡單介紹一下.
首先添加事件接收者:
- [[TouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:1 swallowsTouches:NO];
//self為接收者, 優(yōu)先級參數(shù)從0開始 數(shù)字越小優(yōu)先級越高,就會越先接收到事件, ***一個參數(shù)表示是否阻止此次事件冒泡
然后實現(xiàn)3個方法:
- #pragma mark TouchDispatcherDelegate
- - (BOOL) ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event{
- //你的代碼
- return YES; //這兒如果返回NO 此次觸摸將被忽略
- }
- - (void) ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event
- {
- //你的代碼
- }
- - (void) ccTouchEnded:(UITouch *)touch withEvent:(UIEvent *)event{
- //你的代碼
- }
這樣,就可以像處理UIView里的事件一樣去處理coco2d了.
Edit: 別忘了刪除監(jiān)聽者, 要不然......
- [[TouchDispatcher sharedDispatcher] removeDelegate:self];
小結(jié):Cocos2D for iPhone應(yīng)用開發(fā)學(xué)習(xí)點滴的內(nèi)容介紹完了,希望本文對你有所幫助!