1

我有 2 个场景:一个带有按钮的主场景,另一个只有 1 个文本的场景。

主场景中的按钮操作:

local options =
{
    effect = "fade",
    time = 400,
    params =
    {
        sample_var = "anything",
        custom = "you want",
        data = "here"
    }
}
storyboard.showOverlay("inventory", options)

叠加场景:

local storyboard = require("storyboard")
local scene = storyboard.newScene()

function scene:createScene( event )
    local group = self.view
    local title = display.newText("Inventory", 20, 20, native.systemFont, 16)
    title:setTextColor(255,0,0)
    group:insert(title)
end

function scene:enterScene( event )
    print("enterScene")
end

function scene:exitScene( event )
    print("exitScene")
end

function scene:destroyScene( event )
    print("destroyScene")
end

scene:addEventListener( "createScene", scene )
scene:addEventListener( "enterScene", scene )
scene:addEventListener( "exitScene", scene )
scene:addEventListener( "destroyScene", scene )

return scene

按下“按钮”后,什么也没有发生(没有错误)。主场景仍处于活动状态且可访问。根据官方文档,按下按钮后应该会出现一个场景。

我错过了什么?

注意:两个场景具有相似的结构(使用 Storyboard),并且作为主场景的按钮是使用以下代码创建的:

function scene:createScene( event )
  btnInventory = display.newImage("images/btn_right.png", 320, 600)
  btnInventory:addEventListener("tap", openInventory)
end

openInventory第一个代码清单在哪里。

4

2 回答 2

0

最后我发现瓷砖地图涵盖了所有内容(就像在最顶层一样)。如果地图被删除,覆盖工作正常。

ps 我发现这个Director模块比 Storyboard 更容易使用。我切换到它。

于 2013-11-29T02:44:07.317 回答
0

应该可以,我刚试过。

所以也许你的场景文件名有错字还是在子文件夹中?

如果它在子文件夹中,您必须调用:

storyboard.showOverlay("mysubfolder.inventory", options)
于 2013-11-28T10:59:45.873 回答