在cocos2d-x中使用许多图层进行触摸处理

touch handling in cocos2d-x with many layers

本文关键字:触摸 处理 图层 许多 cocos2d-x      更新时间:2023-10-16

我有一个cocos2d-x触摸处理程序的问题。我有两个CCLayers。第一层是主要应用程序,第二层是工具箱。工具箱可以滑过第一层。主应用程序有一个特殊的触摸处理,工具箱也有触摸处理。当我滑下工具箱并单击它时,cocos2d-x运行主应用程序事件和处理程序。我想运行工具箱处理程序功能,当我点击它,我需要运行主应用程序处理程序,当我点击它了。我该如何解决这个问题?

在您的CCLayer工具箱中,重写registerWithTouchDispatcher()函数以将触摸优先级设置为最高

void ToolBoxLayer::registerWithTouchDispatcher()
{
    CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this, numeric_limits <int> ::min(), true);
}