cocos2dx iOS多点触摸

来源:互联网 发布:java 线程睡眠 编辑:程序博客网 时间:2024/04/30 12:18
一、开启多点触摸
在ios文件夹中的AppController.mm文件的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法中:
[__glView setMultipleTouchEnabled:true]; 
二、注册触摸事件( StandardDelegate )
a)可以在onEnter方法中: CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, 0);
b)也可以重写: virtual void registerWithTouchDispatcher(void); 在这个方法中:
CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, 0);
在init方法中: setTouchEnabled(true);
三、触摸事件委托方法
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);  
 可以用下面的遍历方法,获取每一个触摸点的信息。
CCSetIterator iter = pTouches->begin();  
      
    for (; iter != pTouches->end(); iter++)  
    {  
        CCTouch* pTouch = (CCTouch*)(*iter);  
        CCPoint location = pTouch->getLocation();  
          
    }  

0 0
原创粉丝点击