【quick遇到的陷阱】node的onExit()和onEnter()

  • Post author:
  • Post category:其他


事情是这样的,我想让继承自node的类能在正确的时刻调用onExit()函数,那我们开始吧。

创建了个空项目,然后MainScene.lua弄成下面的样子,嗯,去掉了label然后在加了几个打印函数。

–MainScene.lua

local MainScene = class("MainScene", function()
    return display.newScene("MainScene")
end)
function MainScene:ctor()
    printInfo("MainScene:ctor()")
end
function MainScene:onEnter()
    printInfo("MainScene:onEnter()")
end
function MainScene:onExit()
    printInfo("MainScene:onExit()")
end
return MainScene

我们运行一下,然后退出。log是这样的


合理。我们继续。

新建一个lua文件,myNode.lua,写一个简单的继承自node的节点类。

–myNode.lua

local myNode = class("myNode", function()
    return display.newNode()
end)
function myNode:ctor()
    printInfo("myNode:ctor()")
end
function myNode:onEnter()
    printInfo("myNode:onEnter()")
end
function myNode:onExit()
    printInfo("myNode:onExit()")
end
return myNode

然后丢到MainScene里

–MainScene.lua

local myNode = require("myNode")
function MainScene:ctor()
    printInfo("MainScene:ctor()")
    self.mynode = myNode.new()
        :addTo(self)
End

运行,退出。log是这样



版权声明:本文为hqq39原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。