天天看点

Visual Studio cocos2d-x 3.10 触摸 防穿透方案

cocos2d-x 3.17.2 触摸 防穿透方案,7行代码解决

在新建的Layer初始化代码下一次搞定:

//触摸事件
        auto dispatcher = Director::getInstance()->getEventDispatcher();
        auto listener = EventListenerTouchOneByOne::create();
        //使用Lambda匿名函数
        listener->onTouchBegan = [](Touch* pTouch, Event* pEvent)->bool { return true; };
        listener->onTouchEnded = [](Touch* pTouch, Event* pEvent) {};
        listener->onTouchMoved = [](Touch* touch, Event* unused_event) {};
        //不向下传递触摸事件
        listener->setSwallowTouches(true);
        dispatcher->addEventListenerWithSceneGraphPriority(listener, this);