【问题标题】:corona composer background next scene not showing电晕作曲家背景下一个场景没有显示
【发布时间】:2015-07-20 10:32:10
【问题描述】:

我在作曲家方面遇到了很多困难......这并不容易!

我之前的场景是“游戏”(game.lua)一切正常 当我在我的游戏 lua 中使用这个 sn-p 去我的场景“recolt”时:

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

timer.performWithDelay(1000, goTo) : 问题是我在我的回忆场景后面看到了我以前的场景,我看不到我的背景,但我看到我的圈子在移动???但是我的场景组是正确的:

sceneGroup:insert(background,circle)

当我这样做时:

sceneGroup:insert(circle,background) 

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

怎么了?我想在“recolt”场景中看到我的背景和我的圈子。你可以帮帮我吗 ?非常感谢...在 sn-p "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

【问题讨论】:

    标签: lua coronasdk scene


    【解决方案1】:

    您需要查看文档:object:insert()

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

    sceneGroup:insert(background,circle)
    

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-22
      相关资源
      最近更新 更多