Cocostudio 设置屏蔽层失效

环境是cocos2dx-3.4 cocostudio-2.1.5
我在cocostudio中有一个层,勾选了交互,加载到代码中,层下面的menu点击事件还是可以响应,请问这是怎么回事?
之后我用纯代码写屏蔽层,下面是屏蔽层的部分代码:


auto listener = EventListenerTouchOneByOne::create();
listener->setSwallowTouches(true);
    
listener->onTouchBegan = CC_CALLBACK_2(TestLayer::onTouchBegan,this);
listener->onTouchMoved = CC_CALLBACK_2(TestLayer::onTouchMoved,this);
listener->onTouchEnded = CC_CALLBACK_2(TestLayer::onTouchEnded,this);
_eventDispatcher->addEventListenerWithSceneGraphPriority(listener,this);

但是结果还是一样,层下面的menu点击事件还是可以响应。
好像吞咽事件失效了,怎么回事呢?
是不是我方法错了?