如何在Cocos2dx V3.8中获得触摸位置
How to get touch location in Cocos2dx V3.8
不支持使用this->setTouchEnabled()
这个链接描述了如何在V3中做到这一点,但是_eventDispatcher
现在似乎已经被弃用了。
目前使用:
auto listener = cocos2d::EventListenerTouchOneByOne::create();
listener->setSwallowTouches(true);
listener->onTouchBegan = CC_CALLBACK_2(TouchableArea::touchOccoured, this);
this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, this);
它工作,但我不知道这是否是理想的,虽然
您可以停止/启动单独的事件侦听器:
touchListener->setEnabled(false);
我现在检查了,它工作正常。Cocos2d-x v.3.8.1 .
编辑:
我也不知道是否有更好的方法。但是在cpp-tests、NewEventDispatcherTest.cpp、类PauseResumeTargetTest中,您可以找到这些行:
sprite3->getListener()->setEnabled(false);
_eventDispatcher->pauseEventListenersForTarget(this, true);
…
_eventDispatcher->resumeEventListenersForTarget(this, true);
sprite3->getListener()->setEnabled(true);
所以,这将是一个正式的方式。
相关文章:
- 将值指定给向量(2D)的向量中的某个位置
- 使用Unreal C++获取VR耳机的世界位置/方向
- 写入位置0x0000000C时发生访问冲突
- 如何将两个不同矢量的同一位置的两个元素组合在一起
- GL_SHADERSTORAGE_BUFFER位置是否与其他着色器位置冲突
- 如何使用cudaMallocManaged在指针位置初始化对象?(C++)
- 无法获取webot::PositionSensor对象中位置传感器的值
- 非常量变量只读位置的赋值
- 如何定义更改car类中car位置的方法
- 使用迭代器时如何访问对象在向量中的位置?
- 更改.cpp程序的输入文件中数据的位置会意外更改输出
- 求最大元素位置的分治算法
- 你好。。。id_public变量不应该给出结果为 81 和 86 吗?为什么它为两个派生类占用不同的内存位置?
- 为什么我的点没有在 OpenGL 中绘制鼠标所在的位置?
- 是否可以从触摸板获得绝对触摸位置
- Direct3D 中的 Windows Phone 8 触摸位置
- 根据触摸位置确定移动方向
- 如何在Cocos2dx V3.8中获得触摸位置
- 在触摸板上获得手指位置
- 获取CCScrollview中触摸的位置