屏蔽多点触摸
发布时间:2020-12-14 21:25:28 所属栏目:百科 来源:网络整理
导读:环境 cocos2d-x-3.1.1 ios版本 找到 AppController.mm 修改方法 -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 中 [eaglView setMultipleTouchEnabled: YES] 改成 [eaglView setMultipleTo
环境 cocos2d-x-3.1.1
ios版本 找到 AppController.mm 修改方法 -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 中
[eaglView setMultipleTouchEnabled: YES] 改成[eaglView setMultipleTouchEnabled: false]
android版本 找到 cocos2d-xcocosplatformandroidjavasrcorgcocos2dxlibCocos2dxGLSurfaceView.java 在方法 public boolean onTouchEvent(final MotionEvent pMotionEvent) 中添加两句
switch (pMotionEvent.getAction() & MotionEvent.ACTION_MASK) { case MotionEvent.ACTION_POINTER_DOWN: if (pointerNumber>1) return false;//add 屏蔽多点触摸 final int indexPointerDown = pMotionEvent.getAction() >> MotionEvent.ACTION_POINTER_INDEX_SHIFT; final int idPointerDown = pMotionEvent.getPointerId(indexPointerDown); final float xPointerDown = pMotionEvent.getX(indexPointerDown); final float yPointerDown = pMotionEvent.getY(indexPointerDown); this.queueEvent(new Runnable() { @Override public void run() { Cocos2dxGLSurfaceView.this.mCocos2dxRenderer.handleActionDown(idPointerDown,xPointerDown,yPointerDown); } }); break; case MotionEvent.ACTION_DOWN: if (pointerNumber>1) return false;//add 屏蔽多点触摸 // there are only one finger on the screen final int idDown = pMotionEvent.getPointerId(0); final float xDown = xs[0]; final float yDown = ys[0]; this.queueEvent(new Runnable() { @Override public void run() { Cocos2dxGLSurfaceView.this.mCocos2dxRenderer.handleActionDown(idDown,xDown,yDown); } }); break; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |