首页 > 代码库 > cocos2d-x for iOS多点触控的问题

cocos2d-x for iOS多点触控的问题

依然在看书学习并练习,不过书上的错误真是。。。

首先是CClayer,之前恰好写过一个继承于CCSprite的类,实现单点触控随手指移动,重写了begin,moved和end函数,然后在onEnter和onEixt设置和取消了代理。书上的例子直接是以给的HelloWorld,不仅重写了三个函数,还重写了registerWithTouchDispatcher函数,我怎么写都给提示错误,大致是ambiguous conversion from class HelloWorld to ccTouchDelegate之类的~~实际则是因为继承了CCLayer函数所以不用改写这个。换成继承于CCSprite后这句话就不报错了。

然后是ios模拟器的多点触控。option键和鼠标,用的不是苹果键盘,则是Alt和鼠标。想做成大小缩放的,总是失败。在begin函数本来是只判断触点多于等于两个的,里面又多加了个判断

    if(pTouches->count()==1) 

然后两个条件打印不同信息,就发现用不用Alt键,得到的都只是一个触点的信息~尽管模拟器屏幕上给了两个~

只好问度娘,解决方法是在ios目录下的文件需要改一下~AppController这个文件~在

BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

这个函数里面加一句:[__glView setMultipleTouchEnabled:true];

本来还以为是在HelloWorld里面onEnter之类加的,总抱错。。。原来是在这里~~

之后就可以了~~

 

 

还有一点要注意就是distance和scale的类型~之前脑抽设置了int,于是整个一个悲剧~~