lua代码执行完后,直接退出了游戏,怎么回事?

我用cocos code ide新建了一个lua工程,然后自定义了一个场景,然后程序启动后加载这个scene,但是发现运行完后,直接退出了程序,经调试是因为进入了closeCallback这个函数。
先上代码:

function PuzzleScene:createLayer()
    local layer = cc.Layer:create()
    local s = cc.Director:getInstance():getWinSize()

    local function closeCallback()
        cc.Director:getInstance():endToLua()
    end

    -- add close menu
    local closeItem = cc.MenuItemImage:create("CloseNormal.png", "CloseSelected.png")
    closeItem:registerScriptHandler(closeCallback)
    closeItem:setPosition(s.width - 30, s.height - 30)

    local closeMenu = cc.Menu:create()
    closeMenu:setPosition(0, 0)
    closeMenu:addChild(closeItem)
    layer:addChild(closeMenu)
    
    local targetPlatform = cc.Application:getInstance():getTargetPlatform()       
    if (cc.PLATFORM_OS_IPHONE == targetPlatform) or (cc.PLATFORM_OS_IPAD == targetPlatform) then
        closeMenu:setVisible(false)
    end
    
    return layer
end



```


我的本意是希望在点击了“关闭”按钮后才调用closeCallback,这应该要怎么写呢?

突然被我发现了答案,赶紧奉上,改成
registerScriptTapHandler就行了,而不是registerScriptHandler。

:7: :7: