обработка касаний в cocos2d-x со многими слоями

У меня проблема с сенсорным обработчиком cocos2d-x. У меня два CCLayers, Первый слой является основным приложением, а второй — набором инструментов. Панель инструментов может скользить по первому слою. Основное приложение имеет специальную сенсорную обработку, а панель инструментов также имеет сенсорную обработку. Когда я сдвигаю панель инструментов и нажимаю на нее, cocos2d-x запускает основные события приложения и обработчики. Я хочу запускать функции обработчика панели инструментов, когда нажимаю на него, и мне нужно запускать основные обработчики приложений, когда я нажимаю на него. Как я могу решить эту проблему?

0

Решение

В вашем наборе инструментов CCLayer переопределите функцию registerWithTouchDispatcher() установить приоритет касания на наивысший.

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

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]