zoukankan      html  css  js  c++  java
  • Cocos2d-x——支持多触点

    1:在AppController的didFinishLaunchingWithOptions中,加入

    [__glView setMultipleTouchEnabled:YES];

    2:在CCLayer类中实现以下方法

    头文件:

    virtual void registerWithTouchDispatcher(void);
    virtual void ccTouchesBegan(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent);
    virtual void ccTouchesMoved(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent);
    virtual void ccTouchesEnded(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent);
    virtual void ccTouchesCancelled(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent);

    Cpp文件

    void HelloWorld::registerWithTouchDispatcher(void)
    {
      CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, 0);
    }

    ......

    #pragma mark - Touch Event
    void HelloWorld::ccTouchesBegan(cocos2d::CCSet * pTouches, cocos2d::CCEvent * pEvent)
    {
      CCSetIterator iter = pTouches->begin();
      for (; iter != pTouches->end(); iter++)
      {
        CCTouch* pTouch = (CCTouch*)(*iter);

        ......

      }

    void HelloWorld::ccTouchesMoved(cocos2d::CCSet * pTouches, cocos2d::CCEvent * pEvent)
    {

    }

    void HelloWorld::ccTouchesEnded(cocos2d::CCSet * pTouches, cocos2d::CCEvent * pEvent)
    {

    }

    void HelloWorld::ccTouchesCancelled(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent)
    {
      ccTouchesEnded(pTouches, pEvent);
    }

  • 相关阅读:
    PHP计算近1年的所有月份
    mysql的索引和锁
    深度解析 https 协议
    linux 常用命令大全
    为什么Python3.6字典变得有序了?
    oddo
    RESTful接口开发规范
    python中的 __inti__ 和 __new__ 方法的区别
    十大经典算法 Python实现
    MongoDB journal 与 oplog,究竟谁先写入?--转载
  • 原文地址:https://www.cnblogs.com/leonbao/p/3304794.html
Copyright © 2011-2022 走看看