Table of Contents

UI 库

入门 美术 设计师

UI 库(UI library)包含UI 元素,例如网格、按钮、滑块等,你可以在 UI 页面中使用和重复使用这些元素。

Stride 项目包含一个 UI 元素的标准库。你也可以创建自己的自定义元素库。

UI 库

UI 库类似于场景编辑器中的预制体;你可以创建自己的元素,将它们保存在自定义 UI 库中,然后在多个 UI 页面中随时随地使用。你还可以将库嵌套在其他库中,就像嵌套预制体一样。

在运行时,你可以重新实例化 UI 库的根元素,并将其插入到现有的 UI 树中。

创建 UI 库

在资产视图中,单击添加资产 > UI > UI 库。

添加 UI 库

Game Studio 会将 UI 库添加到资产视图中。

已添加的 UI 库

或者,要从现有 UI 元素创建 UI 库:

  1. 选择要用来创建 UI 库的元素。

  2. 右键单击并选择从所选内容创建库(Create library from selection)。

已添加的 UI 库

Game Studio 会创建一个包含所选元素副本的库。

在代码中指定 UI 库

// 该属性可以在 Game Studio 中通过 UI 库资产进行指定
public UILibrary MyLibrary { get; set; }

public Button CreateButton()
{
    // 假设存在一个名为 "MyButton" 的根元素,其类型为(或派生自)Button
    var button = MyLibrary.InstantiateElement<Button>("MyButton");

    // 如果库中不存在名为 "MyButton" 的根元素,或者类型不匹配,
    // 上面的方法将返回 null
    if (button != null)
    {        
        // 将委托附加到 Click 事件
        button.Click += delegate
        {
            // 在这里做些什么……
        };
    }

    return button;
}

UI 页面只有一个根元素。UI 库可以有多个根元素。

另请参阅