Share via


SplashScreen Classe

Definizione

Fornisce informazioni sulla posizione dell'evento di chiusura e della posizione dell'immagine per la schermata iniziale dell'app.

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
Ereditarietà
Object Platform::Object IInspectable SplashScreen
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Esempio

L'esempio di schermata Iniziale illustra come recuperare un oggetto SplashScreen nel gestore eventi attivato, quando l'app viene avviata.

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);

È possibile usare l'oggetto passato al gestore eventi attivato per ottenere informazioni sull'evento attivato. Nell'esempio l'oggetto contiene informazioni su un'attivazione di avvio ed è un oggetto WebUILaunchActivatedEventArgs (JavaScript) o launchActivatedEventArgs (C#/C++/VB), a seconda del linguaggio di programmazione. La proprietà Kind in questo oggetto consente di distinguere tra diversi tipi di attivazione ( ad esempio ActivationKind.launch o ActivationKind.search).

Commenti

Accedere a questo oggetto dal gestore eventi attivato dell'app usando la proprietà SplashScreen nell'oggetto evento passato al gestore.

Per JavaScript

Rispondere agli eventi attivati nel gestore eventi attivato. Per informazioni su come rispondere agli eventi attivati, vedere Ciclo di vita dell'app.

Se si nota un flicker durante la transizione alla schermata iniziale estesa, aggiungere onload="" il tag come questo: <img id="extendedSplashImage" src="./windows.applicationmodel.activation/images/splash-sdk.png" alt="Splash screen image" onload="" />. Ciò consente di evitare lo sfarfallio eseguendo l'attesa del sistema fino al rendering dell'immagine prima di passare alla schermata iniziale estesa.

Inoltre, se si usa il caricamento di frammenti per caricare una pagina iniziale estesa, è comunque possibile notare un flicker tra quando la schermata iniziale di Windows viene ignorata e quando viene visualizzata la pagina. Questo flicker viene visualizzato perché il caricamento del frammento inizia a caricare la pagina iniziale di imitazione in modo asincrono, prima che il gestore eventi attivato finisca l'esecuzione. È possibile evitare questo flicker antisightly evitando l'uso del caricamento del frammento per caricare la pagina iniziale estesa ,come illustrato dall'esempio di schermata Iniziale. Quando le attività di caricamento aggiuntive vengono completate (anche come illustrato dall'esempio di schermata Iniziale) è possibile passare alla pagina principale dell'app. In alternativa, se si desidera continuare a usare il caricamento di frammenti nella pagina iniziale estesa, è anche possibile impedire il flicker ottenendo un rinvio dell'attivazione e rispondere agli eventi attivati in modo asincrono. Ottenere un rinvio per un evento attivato chiamando l'attivazioneOperation. metodo getDeferral .

Per C#/C++/VB

Rispondere agli eventi Attivati eseguendo l'overload del metodo del gestore eventi attivato corrispondente. Ad esempio, usare OnLaunched per rispondere agli eventi di attivazione ActivationKind.Launch . Per informazioni su come rispondere agli eventi attivati, vedere Ciclo di vita dell'app.

Se si nota un flicker durante la transizione alla schermata iniziale estesa, vedere la sezione Osservazioni in Come estendere la schermata iniziale (HTML) per assistenza.

La proprietà SplashScreen è disponibile in tutte le classi Windows.ApplicationModel.Activation .

Proprietà

ImageLocation

Coordinate dell'immagine della schermata iniziale dell'app rispetto alla finestra.

Eventi

Dismissed

Attiva quando la schermata iniziale dell'app viene ignorata.

Si applica a

Vedi anche