在实践中,写了一个层文件(gamedesk),在gamescene中new这个层文件。
比如gamedesk占的范围是300x200,我们的手机分辨率是1280x640。
生成代码后,发现游戏界面除了能点击gamedesk这个层外,gamescene上的按钮也能点击。(不是层级问题)
最后发现,是gamedesk里面没有进行注册,加上以下代码后便能解决此问题。
local function onTouchBegan(touch,event)
return true
end
local listener = cc.EventListenerTouchOneByOne:create()
listener:setSwallowTouches(true)
listener:registerScriptHandler(onTouchBegan,cc.Handler.EVENT_TOUCH_BEGAN)
local eventDispatcher = self:getEventDispatcher()
eventDispatcher:addEventListenerWithSceneGraphPriority(listener)
假设上面代码还不能解决问题,说明我写的有的单词错了。