如何做新手引导的遮罩?我剪裁了一个区域,但是只想传递点击这个区域的触摸事件到下层

如何做新手引导的遮罩?
我剪裁了一个区域,但是只想传递点击这个区域的触摸事件到下层

不能屏蔽遮罩层的触摸事件,是不是只能判断点在这个区域内才对ontouch时间return true才行?
有没有其他办法呢?

自己动手丰衣足食! 附答案 :2:

//只有触摸在圆形区域才可以向下传递触摸时间
auto touchListener = EventListenerTouchOneByOne::create();
touchListener->onTouchBegan = CC_CALLBACK_2(CircleShelterLayer::onTouchBegan, this);
touchListener->onTouchBegan = =](Touch *touch, Event *event){
    Point point = touch->getLocation();
    float distance = point.getDistance(pos);
    if (distance > radius)
    {
        touchListener->setSwallowTouches(true);
        return true;
    }
    else
    {
        touchListener->setSwallowTouches(false);
    }
    return true;
};

你这样不会对当前触摸事件产生影响,但是会影响下一次的