对话框 - MRTK3

Dialog

对话框控件是提供上下文相关应用信息的 UI 覆盖。 他们经常从用户请求一些操作。 使用对话框通知用户重要信息或请求确认或其他信息,然后才能完成操作。

示例场景和 prefabs

基于画布的对话预制表可用,但工作正在进行,可能无法按预期方式运行。

DialogExample.unity 演示了基于画布的非对话控件,其中包含多种大小和配置:

  • Dialog_168x88mm.prefab
  • Dialog_168x108mm.prefab
  • Dialog_168x140mm.prefab

用于 Dialog.InstantiateFromPrefab() 实例化 (,并选择) 新对话框打开。 在 Dialog 对话预制表上指定组件, DialogProperty 该对象包含标题和说明文本、放置距离 (近或远) 等信息,以及是否打开 (立即显示对话框) 。 在中 DialogProperty ,可以指定对话框选项 (按钮) 显示 DialogButtonContext[]。 MRTK 会提供一些默认值 (OKOKCancelYesNo) ,但也可以创建自定义 DialogButtonContexts。

public static Dialog InstantiateFromPrefab(Dialog dialogComponentOnPrefab, DialogProperty property = null, bool placeForNearInteraction = true, bool openOnInstantiate = false)

示例:打开包含用户选择消息的小对话框,位于近端交互范围(直接交互)

Dialog.InstantiateFromPrefab(DialogPrefabSmall, new DialogProperty("Choice Dialog, Small, Near", "This is an example of a small dialog with a choice message for the user, placed at near interaction range", DialogButtonHelpers.YesNo), true, true);

有关详细信息,请参阅 DialogExampleController.cs DialogExample.unity 场景。