cocos2d-x·技巧]关于cocos2d-x在Android下实现单点触摸小技巧

只是用ccTouchBegan来实现单点触摸是不行的,如果一个父CCLayer里面包含几个重写了ccTouchBegan的子Layer(或Menu),玩家同时点击2个子Layer实际上还是会“变相多点触摸”。要做到真正只支持单点触摸的话,很简单的,改cocos2d-x源代码...


简述情况:

·游戏运行平台:Android

·Cocos2d-x引擎版本:cocos2d-1.0.1-x-0.13.0-beta


首先,在我们的Android工程src目录下,找到这个类:

srcorgcocos2dxlibCocos2dxGLSurfaceView.java


然后,打开这个java文件,定位到函数

  1. public boolean onTouchEvent(final MotionEvent event) {...
复制代码


最后,在onTouchEvent函数里面的两行代码加上:

  1. switch (event.getAction() & MotionEvent.ACTION_MASK) {
  2. case MotionEvent.ACTION_POINTER_DOWN:
  3. if (pointerNumber > 1) return false;
  4. ...
  5. case MotionEvent.ACTION_DOWN:
  6. if (pointerNumber > 1) return false;
  7. ...
复制代码

即可搞定。

原文地址:https://www.cnblogs.com/Anzhongliu/p/6091795.html