Condividi tramite


Finestra di dialogo - MRTK3

Dialogo

Le finestre di dialogo sono visualizzazioni dell'interfaccia utente di breve durata che forniscono informazioni contestuali sull'app. Spesso richiedono un'azione da parte dell'utente e quindi restituiscono il risultato alla logica di business dell'app in un'attività o un risultato asincrono. Usare le finestre di dialogo per notificare agli utenti informazioni importanti o richiedere la conferma prima del completamento di un'azione.

Per gli esempi di utilizzo e documentazione dell'API Dialog, vedere la documentazione di UXCore qui.

Oggetti prefab

I componenti dell'esperienza utente MRTK3 forniscono CanvasDialog.prefab come punto di partenza per la creazione di dialoghi modali basati su codice reattivi.

Il prefab Dialog basato su canvas usa il layout automatico per visualizzare solo i controlli richiesti tramite l'API IDialog fluent builder. Finché i sottocontrolli non vengono richiesti dal chiamante API, verranno disabilitati e non saranno visibili nel layout. Di conseguenza, è necessario un solo prefab dialog, invece di un'ampia gamma di prefab per ogni permutazione di opzioni di pulsante o layout di testo.

Per usare la finestra di dialogo Componenti dell'esperienza utente predefinita, assicurarsi che DialogPool il prefab sia impostato sull'asset corretto. È anche possibile assegnare il DialogPoolprefab in fase di esecuzione tramite l'API DialogPool , tramite il Get parametro o impostando direttamente la DialogPrefab proprietà. Per esempi sull'uso del componente DialogPool, vedere la documentazione dell'API Dialog qui.

Gli sviluppatori possono anche creare prefab dei dialoghi personalizzati. Se il prefab personalizzato offre le stesse funzionalità della funzionalità finestra di dialogo di base, non sono necessarie modifiche al codice e lo script di base Dialog può essere usato. Se sono state aggiunte funzionalità nella visualizzazione Finestra di dialogo che richiedono l'associazione all'API IDialog ,ad esempio nuovi pulsanti, etichette o altri sottocontrolli, sarà necessaria un'implementazione sottoclassata di IDialog . Quando si crea un prefab personalizzato, assicurarsi che i vari sottocontrolli siano stati correttamente referenziati in IDialog MonoBehaviour oppure che non siano associati o idratati correttamente.

Scene di esempio

Vedere DialogExample.unity per esempi su come generare dialoghi. Per altre informazioni, esempi di codice e dettagli, vedere la documentazione di UXCore qui.