Corona SDK:Composer过渡时的黑屏

时间:2014-03-25 09:51:23

标签: android lua corona corona-storyboard

    -- hide device status bar
display.setStatusBar( display.HiddenStatusBar )

-- require controller module
local composer = require( "composer" )

-- load first scene
local scrOptions =
{
effect = "fromRight",
time = 2000
}

composer.gotoScene( "game", scrOptions )

--
-- Display objects added below will not respond to storyboard transitions

local MemUsageDisplay = display.newText( "0", 400, 25, native.systemFont, 20 )
MemUsageDisplay:setFillColor( gray )
local monitorMem = function()
local textMem = system.getInfo( "textureMemoryUsed" ) / 1000000
collectgarbage()
local date = os.date( "*t" )
MemUsageDisplay.text = date.hour .. ":" .. date.min .. ":" .. date.sec .. " / Lua: " .. math.round(collectgarbage("count")) .. "K " .. "Tex: " .. math.round(textMem*10) * 0.1 .. "MB"
end
timer.performWithDelay( 500, monitorMem, 0 )

在模拟器中一切都很好。

然而,在设备上,闪屏闪烁不到一秒钟,然后屏幕变黑约5秒,然后游戏开始。

没有过渡。

我必须补充一点,我的game.lua包含很多代码,但如果我正确理解文档,那么在启动画面可见时应该处理所有这些内容吗?我还在调试模式(catlog ...)中观看它时运行应用程序并在其中放入一些标记以查看代码执行的速度。整个game.lua的处理时间不到一秒钟。

这是正常行为吗?

3 个答案:

答案 0 :(得分:0)

composer.gotoScene(“game”,scrOptions)需要什么参数?

你需要在作曲家库中找到它。

您是否缩短了时间并更改了scrOptions数组中的效果?

试试这个,让我知道你得到了什么。

所以我可以做进一步的调查。

答案 1 :(得分:0)

在我看来,你不是在场景中创建场景:create()事件函数,但在场景中:show()事件函数。你的转换设置为2秒,如果你没有在场景中创建任何东西:create()那么就没有任何东西可以转换,但转换仍然会发生,ergo会变黑并持续几秒钟。

罗布

答案 2 :(得分:0)

添加此代码     local scene = composer.newScene()

如果在模拟器中一切正常,这意味着请检查您的代码是否使用正确的文件名(即图像名称和场景名称是正确的),因为模拟器将Image.png和image.png视为相同,但在设备中它将显示错误。