【发布时间】:2013-08-19 06:00:30
【问题描述】:
我正在开发一个简单的电晕游戏。 当我想使用此代码回调 main.lua 时:
storyboard.loadScene( "main",true)
它对我没有任何作用。 当我使用
storyboard.gotoScene( "main", "fade" ,40 )
main 已加载,但我无法使用 main 的功能!
【问题讨论】:
我正在开发一个简单的电晕游戏。 当我想使用此代码回调 main.lua 时:
storyboard.loadScene( "main",true)
它对我没有任何作用。 当我使用
storyboard.gotoScene( "main", "fade" ,40 )
main 已加载,但我无法使用 main 的功能!
【问题讨论】:
根据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' ?例如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。
【讨论】: