青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

積木

No sub title

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

常用鏈接

留言簿(1)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

轉載自:http://blog.linguofeng.com/archive/2012/09/12/cocos2d-x-touch.html

一、兩種機制的四種不同的事件

CCStandardTouchDelegate 默認事件
virtual void ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent); 處理按下事件
virtual void ccTouchesMoved(CCSet *pTouches, CCEvent *pEvent); 處理按下并移動事件
virtual void ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent); 處理松開事件
virtual void ccTouchesCancelled(CCSet *pTouches, CCEvent *pEvent); 處理打斷事件
CCTargetedTouchDelegate
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent); 處理用戶按下事件,true表示繼續處理, 否則false.
virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent); 處理按下并移動事件
virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent); 處理松開事件
virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent); 處理打斷事件

兩者的區別: CCSetCCTouch ,一個事件集合一個單個事件。

事件分發的順序: CCTargetedTouchDelegateCCStandardTouchDelegate

默認情況下所有 CCLayer 都沒有啟用觸摸事件,需要 this->setIsTouchEnabled(true); 啟用。

如需更改事件: void registerWithTouchDispatcher(void) {}

class MyLayer: public cocos2d:CCLayer {
public:
    virtual void registerWithTouchDispatcher(void);

    // addStandardDelegate()
    virtual void ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent);
    virtual void ccTouchesMoved(CCSet *pTouches, CCEvent *pEvent);
    virtual void ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent);
    virtual void ccTouchesCancelled(CCSet *pTouches, CCEvent *pEvent);

    // addTargetedDelegate()
    virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
    virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
    virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
    virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);
}

void MyLayer::registerWithTouchDispatcher(void) {
    // 委托,優先級
    CCTouchDispatcher::sharedDispatcher()->addStandardDelegate(this, kCCMenuTouchPriority);
    // 委托,優先級,是否繼續處理
    CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this, kCCMenuTouchPriority, true);

    // 2.0版本以后
    CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, kCCMenuHandlerPriority);
    CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, kCCMenuHandlerPriority, true);
}

利用 ccTouchBeganccTouchesBegan 加以實現點擊的回調

void MyLayer::ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent) {
    // 單點
    CCTouch *pTouch = (CCTouch*)(pTouches->anyObject());

    // 所有點
    for(CCSetIterator iterTouch = pTouches->begin(); iterTouch != pTouches->end(); iterTouch++) {
        CCTouch *pCurTouch =  (CCTouch*)(*iterTouch);
    }

    // 獲取點在視圖中的坐標(左上角為原點)
    CCPoint touchLocation = pTouch->getLocationInView();
    // 把點的坐標轉換成OpenGL坐標(左下角為原點)
    touchLocation = CCDirector::sharedDirector()->convertToGL(touchLocation);
    // 把OpenGL的坐標轉換成CCLayer的坐標
    CCPoint local = convertToNodeSpace(touchLocation)
    // 大小為100x100,坐標為(0, 0)的矩形
    CCRect * rect = CCRectMake(0, 0, 100, 100);
    // 判斷該坐標是否在rect矩形內
    bool flag = rect.containsPoint(local)
    if(flag) {
        // 回調
    } else {
        // 不執行
    }
}


posted on 2013-03-10 00:28 Jacc.Kim 閱讀(5910) 評論(0)  編輯 收藏 引用 所屬分類: cocos2d
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品久久波多野结衣| 亚洲欧美激情一区| 免费观看成人网| 欧美激情亚洲一区| 在线视频你懂得一区二区三区| 激情国产一区| 在线成人黄色| 国产精品久久久久久久浪潮网站| 亚洲综合导航| 欧美激情精品久久久久久黑人| 欧美aa在线视频| 久久婷婷久久| 久久最新视频| 噜噜噜91成人网| 亚洲国产日韩欧美在线图片| 一色屋精品亚洲香蕉网站| 国产女主播一区| 欧美日韩国产一级片| 国产欧美一区二区三区久久| 一本色道久久综合亚洲精品不卡| 亚洲欧美日韩天堂| 欧美亚洲三级| 亚洲国产综合视频在线观看| 亚洲欧美精品在线观看| 另类春色校园亚洲| 欧美一区91| 欧美亚洲三级| 欧美激情一级片一区二区| 亚洲综合三区| 亚洲无线视频| 欧美国产丝袜视频| 欧美日韩高清在线观看| 国产精品视频免费一区| 一二三区精品| 久久网站免费| 日韩亚洲欧美一区二区三区| 亚洲美洲欧洲综合国产一区| 日韩午夜中文字幕| 久久久国际精品| 在线亚洲欧美视频| 欧美mv日韩mv亚洲| 久久久久综合| 欧美专区中文字幕| 国产午夜亚洲精品不卡| **欧美日韩vr在线| 亚洲资源av| 在线免费一区三区| 制服丝袜亚洲播放| 国产精品欧美一区喷水| 亚洲娇小video精品| 欧美激情小视频| 午夜精品久久久久久久99樱桃 | 亚洲精品一线二线三线无人区| 亚洲午夜精品久久| 亚洲乱码国产乱码精品精| 欧美va亚洲va国产综合| 亚洲三级免费电影| 欧美在线视频免费观看| 久久婷婷麻豆| 亚洲免费观看高清完整版在线观看| 久久艳片www.17c.com| 亚洲图片在线| 亚洲国产另类久久精品| 一区二区三区回区在观看免费视频| 久久在线观看视频| 久久精品免费电影| 欧美另类videos死尸| 欧美专区日韩视频| 一区二区三区国产精品| 国产亚洲激情视频在线| 亚洲国产成人一区| 日韩亚洲一区二区| 久久精品九九| 久久欧美中文字幕| 久久精品在线观看| 久久夜色精品国产亚洲aⅴ| 国内一区二区三区| 欧美韩国在线| 亚洲图片在线观看| 亚洲欧美色一区| 91久久精品国产91久久性色| 午夜日韩激情| 欧美一区二区视频97| 久久久久国产一区二区三区四区| 亚洲欧美综合国产精品一区| 免费在线欧美黄色| 国产日韩一区欧美| 亚洲国产高清高潮精品美女| 亚洲人在线视频| 一区二区三区视频在线| 日韩一级黄色av| 久久亚洲精选| 蜜桃久久av一区| 国产日韩欧美中文| 欧美精品在线看| 99精品视频一区二区三区| 欧美一区二区| 伊人激情综合| 欧美一区永久视频免费观看| 久久久久久久一区二区| 亚洲精品久久久久久一区二区| 亚洲免费成人av| 久久乐国产精品| 亚洲国产三级| 国产精品美女久久福利网站| 午夜一区二区三视频在线观看 | 亚洲少妇最新在线视频| 精品福利免费观看| 亚洲激情视频在线播放| 国产精品久久久免费| 欧美一区1区三区3区公司| 亚洲欧美日韩高清| 亚洲国产成人精品久久| 亚洲免费福利视频| 亚洲日本成人女熟在线观看| 国产精品自拍网站| 久久中文字幕一区| 欧美承认网站| 亚洲国产另类精品专区 | 日韩午夜三级在线| 亚洲精品久久久一区二区三区| 欧美日韩国产小视频在线观看| 一区二区免费在线观看| 老妇喷水一区二区三区| 亚洲欧美成人| 日韩一级精品| 亚洲欧美日韩精品久久久久| 亚洲图片欧美日产| 亚洲精品乱码久久久久久| 欧美午夜在线一二页| 亚洲精品久久久蜜桃| 久久久999| 久久亚洲色图| 久久久91精品国产一区二区三区 | 一本一道久久综合狠狠老精东影业| 尤物精品国产第一福利三区 | 欧美婷婷六月丁香综合色| 久久国产黑丝| 久久精品国产久精国产思思| 先锋影音网一区二区| 亚洲一二三区视频在线观看| 在线播放国产一区中文字幕剧情欧美| 国产精品夜夜夜一区二区三区尤| 黑人巨大精品欧美一区二区| 亚洲日本欧美在线| 在线观看av不卡| 欧美视频在线观看| 久久躁狠狠躁夜夜爽| 国产精品色在线| 99精品视频免费在线观看| 欧美一区2区三区4区公司二百| 国产精品你懂的在线| 在线播放不卡| 久久精品国产999大香线蕉| 久久婷婷久久| 欧美在线亚洲综合一区| 欧美午夜精品久久久久免费视| 国产一区99| 亚洲国产精选| 久久亚洲捆绑美女| 欧美一区日韩一区| 欧美成人一区在线| 国产一区二区欧美| 欧美一区二区成人6969| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲免费观看在线视频| 亚洲一区在线免费| 国产精品都在这里| 先锋影音国产一区| 99视频一区| 国产精品视频999| 亚洲片区在线| 欧美激情一二三区| 中国女人久久久| 亚洲激情啪啪| 欧美日韩精品免费观看视一区二区| 一本色道久久精品| 欧美二区在线播放| 欧美日韩在线免费观看| 午夜精品福利一区二区三区av| 日韩视频在线播放| 亚洲精品一区二区在线观看| 久久五月激情| 亚洲欧美日韩国产一区| 麻豆精品视频| 欧美日韩美女| 久久久999成人| 久久成人免费视频| 在线观看91精品国产入口| 久久久国产精品一区二区三区| 欧美一区二视频| 一本色道久久综合| 亚洲一区二区三区高清 | 好吊视频一区二区三区四区| 久久影视三级福利片| 亚洲国产天堂久久综合网| 国产精品久久久久久妇女6080| 亚洲美女电影在线| 99视频国产精品免费观看| 午夜精品在线|