电晕作曲家背景下一个场景没有显示

时间:2015-07-20 10:32:10

标签: lua corona scene

我对作曲家有很多困难......这不是那么容易!

我之前的场景是“游戏”(game.lua)一切正常 当我用我的游戏lua中的这个片段进入我的场景“recolt”时:

local function goTo()    
    print("gotoscene")
    composer.gotoScene( "recolt", { time = 1000, effect = "fromRight", params = params } )
end

timer.performWithDelay(1000,goTo) :问题是,我看到我的重新场景背后的前一个场景,我看不到我的背景,但我看到我的圈子正在移动???但我的sceneGroup是正确的:

sceneGroup:insert(background,circle)

当我这样做时:

sceneGroup:insert(circle,background) 

我看到我的背景隐藏了我之前的场景和我的圈子。 >预期的行为

怎么了?我希望在y“recolt”场景中看到我的背景和我的圆圈。你可以帮帮我吗 ?非常感谢...在片段“recolt.lua”下面。

--recolt.lua
local composer = require( "composer" )
local scene = composer.newScene()

function scene:create( event )
    local sceneGroup = self.view
    params = event.params

        local background=display.newImageRect("back02.png",display.contentWidth*.5,d        isplay.contentHeight*.5,320,480)
        background.x,background.y=display.contentWidth*.5,display.contentHeight*.5
        background.xScale,background.yScale=2,2
        background.alpha=1

        local circle = display.newCircle(120,100,100)

    sceneGroup:insert(background,circle)

    timeT=150

    local function tr4()
      transition.to(circle,{time=timeT,x=200,y=300,alpha=1,transition=easing.linear,      xScale=1,yScale=1})
    end

    local function tr3()
      transition.to(circle,{time=200,x=100,y=300,transition=easing.linear, xScale=.2      ,yScale=.5,onComplete=tr4})
    end

    local function tr2()
      transition.to(circle,{time=200,x=200,y=295,transition=easing.linear, xScale=.2      ,yScale=.2,alpha=.2,onComplete=tr3})
    end

    local function tr1()
      transition.to(circle,{time=timeT,x=300,y=300,transition=easing.linear, xScale=      .5,yScale=.5,onComplete=tr2})
    end

    timer.performWithDelay(700,tr1,-1)

end

function scene:show( event )
    local sceneGroup = self.view
    params = event.params

    if event.phase == "did" then
        --physics.start()
    end
end

function scene:hide( event )
    local sceneGroup = self.view    
    if event.phase == "will" then
        --
        -- Remove enterFrame listeners here
        --
        --physics.stop()
    end
end

function scene:destroy( event )
    local sceneGroup = self.view    
end

---------------------------------------------------------------------------------
-- END OF YOUR IMPLEMENTATION
---------------------------------------------------------------------------------
scene:addEventListener( "create", scene )
scene:addEventListener( "show", scene )
scene:addEventListener( "hide", scene )
scene:addEventListener( "destroy", scene )
return scene

1 个答案:

答案 0 :(得分:1)

您需要查看文档:{​​{3}}

问题是你只能用insert()函数将1个对象添加到场景中,所以你只需要改变

sceneGroup:insert(background,circle)

sceneGroup:insert(background)
sceneGroup:insert(circle)

顺序很重要,你创建的第一个对象会回到场景中。