为什么';t corona composer允许您返回main.lua页面

为什么';t corona composer允许您返回main.lua页面,lua,coronasdk,Lua,Coronasdk,当我使用 composer.gotoscene("main") 将弹出一条错误消息: “尝试连接全局“sceneName”堆栈回溯” 如果我使用另一个页面来重定向而不是main.lua(例如“scene2”),那么它可以工作。游戏的所有代码都应该在自己的Composer场景中,而不是main.lua。如果带有播放按钮的作曲家场景被称为homesene.lua,则在main.lua中 local composer = require "composer" composer.gotoScene(

当我使用

composer.gotoscene("main")
将弹出一条错误消息:

“尝试连接全局“sceneName”堆栈回溯”


如果我使用另一个页面来重定向而不是main.lua(例如“scene2”),那么它可以工作。

游戏的所有代码都应该在自己的Composer场景中,而不是
main.lua
。如果带有播放按钮的作曲家场景被称为
homesene.lua
,则在
main.lua

local composer = require "composer"
composer.gotoScene( "HomeScene" )
这将使带有“播放”按钮的场景加载并首先显示。如果您想在玩家有机会按Play开始游戏之前初始化游戏场景,您也可以在
main.lua
中添加
composer.loadScene(“游戏场景”)
。这只是创建场景并存储它,而不显示它

homesene.lua
中,如果播放按钮是一个名为
playButton
的显示对象,您可以执行以下操作

local composer = require "composer"

local function handleTouch( event )
    if event.phase == "began" then
        composer.gotoScene( "GameScene" )
    end
end

playButton:addEventListener( "touch", handleTouch )

希望这有帮助。

你为什么要去梅因?来自Corona:“编写器生命周期始于main.lua。但是,main.lua本身不是编写器场景”。因此,我认为不可能使用
main
作为
composer.gotoscene
@Ronald的参数。基本上,我的游戏的主代码在main.lua中,我想用一个按钮“play”创建一个单独的页面,该按钮将重定向到main.lua并启动游戏。