使用'gotoScene'时,场景出现,但之前的场景仍然存在

When using 'gotoScene', the scene appears, but the previous scene remains too

我目前正在尝试让 Corona 中的应用程序移动到新场景。经过多次试验和错误,并查看其他人的示例,我将第二个场景加载到屏幕上。

但是,当加载第二个场景时,没有过渡,并且之前的场景也保持可见,同时让场景 1 和场景 2 都可见。

我的 main.lua 文件:

local composer = require("composer")

display.setStatusBar(display.HiddenStatusBar)

composer.gotoScene("scene1")

我的 scene1.lua 文件:

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

function scene:create(event)

  local sceneGroup = self.view

  local transitionOptions =
  {
    effect = "fade",
    time = 2000
  }

  local function gotoScene2(event)

    composer.gotoScene("scene2", transitionOptions)

  end

  local rect = display.newRect(display.contentCenterX, 
display.contentCenterY, 50, 50)

  rect:addEventListener("tap", gotoScene2)

end

scene:addEventListener("create", scene)

return scene

我的 scene2.lua 文件:

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

function scene:create(event)

  local circ = display.newCircle(display.contentCenterX, 100, 25)

end

scene:addEventListener("create", scene)

return scene

我不知道我做错了什么,所以任何帮助都会很好,谢谢。

添加

sceneGroup:insert( rect )

scene1.lua 文件中 scene:create 函数的末尾。 scene2场景中的circ也适用。

来自科罗纳 documentation

Remember that you must insert scene display objects into the scene's self.view group. If you create display objects but do not insert them into this group, they will reside in front of the Composer stage and they will not be regarded as part of the scene. For display objects which should be part of the scene and "managed" by Composer — for example, cleaned up when the scene is removed — you must insert them into the scene's self.view group