cocos2d中layer的触摸吞噬

看到网上好多都是直接设置

self:setTouchEnable(true);

self:setSwallowsTouches(true);

就可以了,但是我试了好多次都不行,最后想了一个取巧的办法:

-- 建一个屏蔽层

    local layer = cc.Layer:create()

-- 然后屏蔽点击

layer:setTouchEnabled(true)
layer:setTouchMode(cc.TOUCHES_ONE_BY_ONE)
layer:registerScriptTouchHandler(function(event)
if event == "began" then
            return true
        end
end)
self:addChild(layer)

最好添加到layer上,这样以后在layer上添加的控件都可以防止击穿

猜你喜欢

转载自blog.csdn.net/ChengTong007/article/details/79073255
今日推荐