SplashScreen 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
앱의 시작 화면에 대한 해제 이벤트 및 이미지 위치 정보를 제공합니다.
public ref class SplashScreen sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class SplashScreen final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public sealed class SplashScreen
Public NotInheritable Class SplashScreen
- 상속
- 특성
Windows 요구 사항
디바이스 패밀리 |
Windows 10 (10.0.10240.0에서 도입되었습니다.)
|
API contract |
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)
|
예제
Splash 화면 샘플은 앱이 시작될 때 활성화된 이벤트 처리기에서 SplashScreen 개체를 검색하는 방법을 보여 줍니다.
protected override void OnLaunched(LaunchActivatedEventArgs args)
{
if (args.PreviousExecutionState != ApplicationExecutionState.Running)
{
bool loadState = (args.PreviousExecutionState == ApplicationExecutionState.Terminated);
ExtendedSplash extendedSplash = new ExtendedSplash(args.SplashScreen, loadState);
Window.Current.Content = extendedSplash;
}
Window.Current.Activate();
}
function activated(eventObject) {
if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.launch) {
// Retrieve splash screen object
splash = eventObject.detail.splashScreen;
// Retrieve the window coordinates of the splash screen image.
SdkSample.coordinates = splash.imageLocation;
// Register an event handler to be executed when the splash screen has been dismissed.
splash.addEventListener("dismissed", onSplashScreenDismissed, false);
// Create and display the extended splash screen using the splash screen object.
ExtendedSplash.show(splash);
// Listen for window resize events to reposition the extended splash screen image accordingly.
// This is important to ensure that the extended splash screen is formatted properly in response to snapping, unsnapping, rotation, etc...
window.addEventListener("resize", onResize, false);
// Use setPromise to indicate to the system that the splash screen must not be torn down
// until after processAll and navigate complete asynchronously.
eventObject.setPromise(WinJS.UI.processAll().then(function () {
// Navigate to either the first scenario or to the last running scenario
// before suspension or termination.
var url = WinJS.Application.sessionState.lastUrl || scenarios[0].url;
return WinJS.Navigation.navigate(url);
}));
}
}
// Register your activated event handler
WinJS.Application.addEventListener("activated", activated, false);
활성화된 이벤트 처리기에 전달된 개체를 사용하여 활성화된 이벤트에 대한 정보를 가져올 수 있습니다. 이 예제에서 개체는 시작 활성화에 대한 정보를 포함하며 프로그래밍 언어에 따라 webUILaunchActivatedEventArgs (JavaScript) 또는 LaunchActivatedEventArgs (C#/C++/VB) 개체입니다. 이 개체의 Kind 속성을 사용하면 다른 유형의 활성화(예: ActivationKind.launch 또는 ActivationKind.search)를 구분할 수 있습니다.
설명
처리기에 전달되는 이벤트 개체의 SplashScreen 속성을 사용하여 앱의 활성화된 이벤트 처리기에서 이 개체에 액세스합니다.
JavaScript의 경우
활성화된 이벤트 처리기에서 활성화 된 이벤트에 응답합니다. 활성화된 이벤트에 응답하는 방법을 알아보려면 앱 수명 주기를 참조하세요.
확장된 시작 화면으로 전환하는 동안 깜박임이 발견되면 태그에 를 <img id="extendedSplashImage" src="./windows.applicationmodel.activation/images/splash-sdk.png" alt="Splash screen image" onload="" />
추가 onload=""
합니다. 이렇게 하면 확장된 시작 화면으로 전환하기 전에 이미지가 렌더링될 때까지 시스템이 대기하도록 하여 깜박이는 것을 방지할 수 있습니다.
또한 조각 로드를 사용하여 확장된 시작 화면 페이지를 로드하는 경우에도 Windows 시작 화면이 해제된 시점과 페이지가 표시되는 시점 사이에 깜박임이 표시될 수 있습니다. 조각 로드가 활성화 된 이벤트 처리기 실행을 완료하기 전에 모조 시작 화면 페이지를 비동기적으로 로드하기 시작하므로 이 깜박임이 표시됩니다. 시작 화면 샘플에서 설명한 대로 조각 로드를 사용하여 확장된 시작 화면 페이지를 로드하지 않도록 하여 이 보기 흉한 깜박임을 방지할 수 있습니다. 추가 로드 작업이 완료되면(Splash 화면 샘플에서도 설명한 대로) 앱의 기본 페이지로 이동할 수 있습니다. 또는 확장된 시작 화면 페이지에서 조각 로드를 계속 사용하려는 경우 활성화 지연을 가져오고 비활성화된 이벤트에 비동기적으로 응답하여 깜박임을 방지할 수도 있습니다. activatedOperation을 호출하여 활성화된 이벤트에 대한 지연을 가져옵니다. getDeferral 메서드.
C#/C++/VB의 경우
해당 활성화된 이벤트 처리기 메서드를 오버로드하여 활성화된 이벤트에 응답합니다. 예를 들어 OnLaunched 를 사용하여 ActivationKind.Launch 활성화 이벤트에 응답합니다. 활성화된 이벤트에 응답하는 방법을 알아보려면 앱 수명 주기를 참조하세요.
연장된 시작 화면으로 전환하는 동안 깜박임이 표시되는 경우 도움말은 시작 화면(HTML)을 확장하는 방법의 설명 섹션을 참조하세요.
SplashScreen 속성은 모든 Windows.ApplicationModel.Activation 클래스에서 사용할 수 있습니다.
속성
ImageLocation |
창을 기준으로 하는 앱 시작 화면 이미지의 좌표입니다. |
이벤트
Dismissed |
앱의 시작 화면이 해제되면 발생합니다. |