我正在开发一个简单的电晕游戏。当我想使用以下代码回调 main.lua 时:
storyboard.loadScene( "main",true)
它对我没有任何作用。当我使用
storyboard.gotoScene( "main", "fade" ,40 )
主加载但我不能使用主的功能!
根据http://docs.coronalabs.com/api/library/storyboard/gotoScene.html提供的故事板文档,您的 storyboard.gotoScene() 语法不正确
local options = {
effect = "fade",
time = 40
}
storyboard.gotoScene("main", options)
-- 莫克什
你需要故事板吗?例如local storyboard = require("storyboard")
你宣布现场了吗?例如local scene = storyboard.newScene()
您是否已宣布这 3 个阶段?例如
function scene:createScene(e);
function scene:enterScene(e);
function scene:exitScene(e)
您是否已将3 个事件侦听器添加到“场景”?例如
scene:addEventListener("createScene", scene)
你用过 self.view 吗?
改变场景:storyboard.gotoScene('#scene', {time = value, effect = value})
main.lua 永远不应该被视为一个场景。你永远不会回到它。您的 main.lua 是让您进入故事板场景的启动点,然后故事板场景可以自己进行。main.lua 中的故事板代码应该是:
local storyboard = require( "storyboard" )
-- other code that needs to run outside of storyboard
-- then at the bottom of your main.lua
storyboard.gotoScene("menu", options) -- whatever options you need.
main.lua 中应该包含的内容包括系统事件处理程序、密钥处理程序、可能启动 facebook 及其侦听器、IAP 初始化和事件处理程序等。在我的应用程序中,我通常会这样做:
main.lua --> splash.lua -- > menu.lua --> game.lua --> nextlevel.lua
--> gameover.lua
--> help.lua
--> gamecredits.lua
--> gamesettings.lua
这些模块完成后会返回到 menu.lua。