composer.loadScene()

类型 函数
composer.*
返回值
修订 版本 2024.3703
关键词 composer, 场景, 加载, loadScene
另请参阅 composer.gotoScene()
composer.showOverlay()

概述

加载指定的场景,隐藏在当前场景之后,不启动场景过渡。此函数类似于 composer.gotoScene(),但它不会更改当前活动的场景。假设场景的 self.view 尚不存在,则只会调度场景上的 create 事件。

此外,您可以在调用此函数时设置可选的 doNotLoadView 标志。这样做将只加载场景的对象,而不加载其 self.view 显示组。

此函数通常用于在启动场景过渡之前“预加载”场景,该过渡将在稍后显式发生。

语法

composer.loadScene( sceneName [, doNotLoadView] [, params] )
sceneName (必需)

字符串. 要加载的场景的名称,隐藏在当前场景之后。

doNotLoadView (可选)

布尔值. 设置为 true 只加载场景的对象,而不加载其 self.view 显示组。假设场景的 self.view 尚不存在,则只会调度场景上的 create 事件。

params (可选)

. 一个可选的表,包含应传输到场景的任何类型的自定义数据。在指定的场景中,可以通过 create 事件中的 event.params 访问此数据(除非 doNotLoadView 设置为 true)。

示例

local composer = require( "composer" )

local currentScore = 200

-- Pre-load the scene, hidden behind the current scene
local options = { level="Level 1", score=currentScore }
local results = composer.loadScene( "results", false, options )

-- Later, transition to the hidden scene (no loading necessary)
composer.gotoScene( "results", "fade", 800 )