UI 库
入门 美术 设计师
UI 库(UI library)包含UI 元素,例如网格、按钮、滑块等,你可以在 UI 页面中使用和重复使用这些元素。
Stride 项目包含一个 UI 元素的标准库。你也可以创建自己的自定义元素库。

UI 库类似于场景编辑器中的预制体;你可以创建自己的元素,将它们保存在自定义 UI 库中,然后在多个 UI 页面中随时随地使用。你还可以将库嵌套在其他库中,就像嵌套预制体一样。
在运行时,你可以重新实例化 UI 库的根元素,并将其插入到现有的 UI 树中。
创建 UI 库
在资产视图中,单击添加资产 > UI > UI 库。

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

或者,要从现有 UI 元素创建 UI 库:
选择要用来创建 UI 库的元素。
右键单击并选择从所选内容创建库(Create library from selection)。

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 库可以有多个根元素。