对话框 - MRTK3

Dialog

对话框是提供上下文应用信息的短期 UI 视图。 它们经常向用户请求某些操作,然后通过异步任务或结果将结果返回到应用的业务逻辑中。 对话框可用于通知用户重要信息或在可以完成某个操作之前请求确认信息。

如果要查找对话框 API 文档和用法示例,请参阅此处的 UXCore 文档

预制

MRTK3 UX 组件提供 CanvasDialog.prefab 作为构建响应式、代码驱动的模式对话框的起点。

基于画布的对话框预制件使用自动布局仅显示通过 IDialog Fluent 生成器 API 请求的控件。 在 API 调用方请求子控件之前,它们将被禁用,并且不会在布局中显示。 因此,只需要一个对话框预制件,而不是针对按钮选项或文本布局的每种排列提供各种预制件。

若要使用预制的 UX 组件对话框,请确保 DialogPool 已将预制件设置为正确的资产。 还可以在运行时使用 DialogPool API(通过 Get 参数或直接设置 DialogPrefab 属性来实现)分配 DialogPool 的预制件。 有关使用 DialogPool 组件的示例,请参阅此处的对话框 API 文档。

开发人员还可以生成自己的自定义对话框预制件。 如果自定义预制件提供与基本对话框功能相同的功能,则无需更改代码,并且可以使用基本 Dialog 脚本。 如果在对话框视图中添加了需要绑定到 IDialog API 的功能(如新按钮、标签或其他子控件),则需要 IDialog 的子类化实现。 生成自定义预制件时,请确保在 IDialog MonoBehaviour 上正确引用了各种子控件,否则它们不会正确绑定或水化。

示例场景

有关如何生成对话框的示例,请参阅 DialogExample.unity。 有关详细信息、代码示例和详细信息,请参阅此处的 UXCore 文档。