Dela via


Dialog – MRTK3

Dialogrutan

Dialogrutor är kortlivade gränssnittsvyer som ger sammanhangsberoende appinformation. De begär ofta en åtgärd från användaren och returnerar sedan resultatet till appens affärslogik i en asynkron uppgift eller ett resultat. Använd dialogrutor för att meddela användarna om viktig information eller begära bekräftelse innan en åtgärd kan slutföras.

Om du letar efter dokumentationen och användningsexemplen för Dialog-API:et kan du läsa dokumentationen om UXCore här..

Prefabs

MRTK3 UX-komponenter är CanvasDialog.prefab en startpunkt för att skapa dynamiska, koddrivna modala dialogrutor.

Prefab för arbetsytebaserad dialogruta använder automatisk layout för att endast visa de kontroller som begärs via API:et IDialog fluent builder. Tills underkontrollerna begärs av API-anroparen inaktiveras de och visas inte i layouten. Därför behövs bara en dialogprefab, i stället för en mängd olika prefabs för varje permutation av knappalternativ eller textlayout.

Om du vill använda dialogrutan för färdiga UX-komponenter kontrollerar du DialogPool att prefab har angetts till rätt tillgång. Du kan också tilldela DialogPoolprefab vid körning via API:et DialogPool , antingen via parametern Get eller genom att ange egenskapen direkt DialogPrefab . Se dokumentationen för Dialog-API:et här för exempel på hur du använder komponenten DialogPool.

Utvecklare kan också skapa egna anpassade dialogprefabs. Om den anpassade prefab har samma funktioner som den grundläggande dialogrutefunktionen krävs inga kodändringar och basskriptet Dialog kan användas. Om det finns tillagda funktioner i dialogvyn som kräver bindning till API:et IDialog (t.ex. nya knappar, etiketter eller andra underkontroller) krävs en underklassimplementering av IDialog . När du skapar en anpassad prefab, se till att de olika underkontrollerna har refererats korrekt på IDialog MonoBehaviour, annars kommer de inte att bindas eller hydratiseras korrekt.

Exempelscener

Se DialogExample.unity exempel på hur du skapar dialogrutor. Mer information, kodexempel och information finns i UXCore-dokumentationen här..