SplashScreen Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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à
- 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. |