Condividi tramite


InitialRotationPreference (schema delle estensioni per Windows 8.1)

Descrive gli orientamenti in cui l'app preferisce essere visualizzata per un'esperienza utente ottimale. In un dispositivo che può essere ruotato, ad esempio un tablet, l'app non verrà ridisegnata per gli orientamenti non specificati qui. Ad esempio, se l'app specifica solo gli orientamenti Orizzontale e OrizzontaleF ritagliato e il dispositivo viene ruotato con orientamento Verticale, l'app non ruota.

Si noti che nei dispositivi che non possono essere ruotati, un'app potrebbe essere visualizzata con l'orientamento predefinito del dispositivo e l'orientamento preferito dell'app verrà ignorato. Tuttavia, in un dispositivo con un blocco di rotazione attivato, la rotazione preferita dell'app verrà comunque rispettata.

Queste scelte di preferenza di orientamento si applicano sia alla schermata iniziale che all'interfaccia utente dell'app quando viene avviata una nuova sessione per l'app. Le preferenze possono essere modificate in fase di esecuzione tramite la proprietà AutoRotationPreferences .

Gerarchia degli elementi

<VisualElements>
<InitialRotationPreference>

Sintassi

<InitialRotationPreference>

  <!-- Child elements -->
  Rotation{1,4}

</InitialRotationPreference>

Chiave

{} intervallo specifico di occorrenze

Attributi ed elementi

Attributi

Nessuno.

Elementi figlio

Elemento figlio Descrizione
Rotazione

Specifica un singolo orientamento rotazionale in cui verrà visualizzata un'app.

 

Elementi padre

Elemento padre Descrizione
VisualElements

Descrive gli aspetti visivi dell'app UWP: il riquadro predefinito, le immagini del logo, il testo e i colori di sfondo, l'orientamento iniziale dello schermo, la schermata iniziale e l'aspetto del riquadro della schermata di blocco.

 

Commenti

Questo elemento fa parte del file manifesto dell'app (package.appxmanifest). Nell'editor Microsoft Visual Studio manifesto questa impostazione si trova nella scheda Dell'interfaccia utente dell'applicazione come "Rotazioni iniziali supportate". Per impostazione predefinita, nessuna delle opzioni è selezionata. Ciò significa che sono supportati tutti gli orientamenti di rotazione. Se si seleziona nessuna delle rotazioni o tutte le rotazioni, viene restituito lo stesso risultato.

Poiché l'app può essere eseguita in diversi tipi di dispositivi, ovvero PC desktop, tablet, portatili o telefoni, non è possibile avere una conoscenza avanzata dell'orientamento del dispositivo al momento dell'avvio dell'app né che il dispositivo non verrà ruotato mentre l'app è attiva. È quindi consigliabile sviluppare l'app con la possibilità di essere visualizzata con qualsiasi orientamento. Ciò detto, l'app può usare questo elemento per Windows limitare la visualizzazione dell'app alle rotazioni ideali. Tuttavia, Windows sempre possibile rispettare la richiesta. Poiché non tutti i dispositivi possono essere ruotati o rilevare la rotazione, le preferenze di orientamento non possono essere sempre rispettate Windows. Ad esempio, se si specifica che l'app deve essere visualizzata in verticale, ma l'app viene eseguita su un monitor desktop standard orientato all'orientamento orizzontale o su un programma tv, la preferenza verrà ignorata perché la visualizzazione dell'app sul lato dell'app non sarebbe un'esperienza utente ottimale. Per questo motivo, è consigliabile prendere in considerazione il supporto di tutti gli orientamenti in modo che l'app sia buona indipendentemente dalla rotazione del dispositivo.

Nota Poiché in questo momento i PC desktop e i notebook rimangono i dispositivi statisticamente predominanti in cui è probabile che l'app sia in esecuzione e poiché questi dispositivi sono quasi tutti fissi con orientamento orizzontale e non rilevano la rotazione, è necessario che un'app supporti almeno la rotazione orizzontale. Tuttavia, anche se deve essere supportato, non è necessario dichiarare Landscape come rotazione preferita.

 

Questo elemento contiene fino a 4 elementi Rotation , ognuno dei quali specifica un orientamento in cui l'app preferisce essere visualizzata. Se non si includono elementi Rotation , ha lo stesso effetto di includere tutti e quattro.

L'esempio seguente mostra un'app che verrà visualizzata in Orizzontale e OrizzontaleF ritagliato, ma non cambierà l'orientamento per un dispositivo con orientamento Verticale o VerticaleF ritagliato.

                        
<InitialRotationPreference>
    <Rotation Preference="landscape"/>
    <Rotation Preference="landscapeFlipped"/>
</InitialRotationPreference>
                    

Quando l'app viene avviata inizialmente, Windows riceve le preferenze di rotazione. Queste preferenze rimangono invariate fino al termine dell'app, con un'eccezione importante: se viene effettuata una chiamata a Windows. Graphics.Display.DisplayInformation.autoRotationPreferences per modificare tali preferenze. Tale API viene usata per Windows una modifica nelle preferenze di rotazione dell'app e può essere chiamata in qualsiasi momento. Si noti che questa chiamata API non influisce sul contenuto dell'elemento InitialRotationPreference nel file manifesto dell'app, che rimane così come vengono impostati nell'editor manifesto. Pertanto, ogni volta che si riavvia l'app, vengono accettate le preferenze di rotazione specificate in origine nel manifesto dell'app.

Si consideri, ad esempio, un'app di gioco che viene visualizzata meglio in orizzontale, ma che ha una determinata pagina che visualizza una mappa più leggibile in verticale. La serie di eventi seguente potrebbe verificarsi in un dispositivo che supporta la rotazione. Una familiarità con i termini del ciclo di vita delle app sarà utile qui.

  1. Lo sviluppatore specifica le preferenze di rotazione Landscape e/o LandscapeFlipped per l'app nell'editor manifesto.
  2. Il gioco viene installato e avviato. Vengono applicate le preferenze specificate nell'editor manifesto e il gioco non viene ruotato in verticale.
  3. Il gioco rileva che l'utente sta accedendo alla mappa. Chiama AutoRotationPreferences per indicare Windows modificare le preferenze di rotazione dell'app in Verticale e/o VerticaleF ritagliato.
  4. Windows ruota l'app sul nuovo orientamento preferito.
  5. L'utente passa a un'altra app per controllare la posta elettronica.
  6. L'utente torna all'app di gioco per continuare dal punto in cui è stata tornati. Windows che l'ultima preferenza indicata dall'app era verticale e porta l'app sullo schermo con tale orientamento. Si noti che non si è fatto riferimento alle impostazioni initialRotationPreference perché la sessione corrente è ancora attiva.
  7. Il gioco rileva che l'utente sta chiudendo la pagina della mappa. Chiama AutoRotationPreferences per riportarne le preferenze di rotazione alle impostazioni originali di Landscape per continuare il gioco.
  8. L'utente termina il gioco e l'app viene sospesa dopo che l'utente si allontana per un certo periodo di tempo.
  9. L'utente riprende l'app per riprodurre un altro gioco. Poiché l'app non è stata riavviata, vengono comunque applicate le ultime preferenze dichiarate dall'API AutoRotationPreferences .
  10. Il gioco viene chiuso (terminato).
  11. Il gioco viene riavviato. Poiché è di nuovo a partire da un avvio iniziale, vengono applicate di nuovo le impostazioni InitialRotationPreference .

Il punto chiave da notare è che dopo aver chiamato AutoRotationPreferences, è responsabilità dell'utente gestire le preferenze di rotazione tramite tale API fino al termine del gioco (non semplicemente sospeso).

Quando un'app ruota, Windows ruota con essa. Se si chiude l'app in verticale, il schermata Start visualizzato in verticale. Se un'app ha dichiarato una preferenza di rotazione per una rotazione diversa da quella attualmente visualizzata dal dispositivo, la rotazione del sistema si verifica mentre viene visualizzata la schermata iniziale dell'app. L'interfaccia utente principale dell'app non verrà visualizzata fino al completamento della rotazione del sistema dietro di essa.

Vedi anche

VisualElements

Guida introduttiva: Creazione di un riquadro predefinito con l'editor Visual Studio manifesto

Windows. Graphics.Display.DisplayInformation.AutoRotationPreferences

Requisiti

Valore
Namespace http://schemas.microsoft.com/appx/2010/manifest