急:删除精灵的问题

local MainScene = class(“MainScene”, function()
return display.newScene(“MainScene”)
end)

function MainScene:ctor()
self.sprite = display.newSprite(“AA.jpg”, display.cx, display.cy, {scale9 = true})
:addTo(self)
self.sprite:setTouchEnabled(true)
self.sprite:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)
if event.name == “began” then
self.beganX = event.x
self.beganY = event.y
return true
elseif event.name == “ended” then
transition.stopTarget(self.sprite)
transition.scaleTo(self.sprite, {time = 0.5, scale = 0.5})
end
end)
self.sprite:removeSelf()
self.sprite = display.newSprite(“AA.jpg”, display.cx, display.cy, {scale9 = true})
:addTo(self)
self.sprite:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)
if event.name == “began” then
self.beganX = event.x
self.beganY = event.y
return true
elseif event.name == “ended” then
transition.stopTarget(self.sprite)
transition.scaleTo(self.sprite, {time = 0.5, scaleX = 0.5})
end
end)

end

function MainScene:onEnter()
end

function MainScene:onExit()
end

return MainScene

删除精灵后 新的监听事件无法响应

这个是一直存在的bug,你可以做延迟添加监听, 代码如下
require(“framework.scheduler”).performWithDelayGlobal(function()
self.sprite:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)
if event.name == “began” then
self.beganX = event.x
self.beganY = event.y
return true
elseif event.name == “ended” then
transition.stopTarget(self.sprite)
transition.scaleTo(self.sprite, {time = 0.5, scaleX = 0.5})
end
end)
end, 0.1)

延迟添加好像还是没有作用。

问题解决了。感谢2楼

请问 如何解决的 我讲一个 tableView:setVisible(false) 然后添加一个Layer到场景上 在把Layer:removeSelf() 然后在 tableView:setVisible(true) 这个时候 tableView不能点击了和滑动了