我对作曲家有很多困难......这不是那么容易!
我之前的场景是“游戏”(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
答案 0 :(得分:1)
您需要查看文档:{{3}}
问题是你只能用insert()函数将1个对象添加到场景中,所以你只需要改变
sceneGroup:insert(background,circle)
到
sceneGroup:insert(background)
sceneGroup:insert(circle)
顺序很重要,你创建的第一个对象会回到场景中。