主题样式表 (TSS) 文件是常规的 USS 文件。 UI(用户界面) 允许用户与您的应用程序交互。Unity 目前支持三种 UI 系统。 更多信息
参见 术语表 工具包将 TSS 视为一种独特的资源类型,并将其用于管理目的。
常规 USS 语法和格式适用于 TSS 文件,但通常,主题文件通过 @import
规则引用其他 USS 文件。
注意:USS 文件也支持 @import
规则。
您可以为不同的主题创建不同的 TSS 文件,并在运行时在它们之间切换。通常,您应该将 USS 用于样式。当您自定义不同平台或设备的外观和感觉时,或者当您的游戏或应用程序支持多种语言时,您使用不同语言的不同字体时,请考虑使用 TSS。
注意:当您向项目中的 游戏对象Unity 场景中的基本对象,可以表示角色、道具、场景、摄像机、路点等。游戏对象的的功能由附加在其上的组件定义。 更多信息
参见 术语表 添加第一个 UIDocument 时,它会在 Assets/UI Toolkit/UnityThemes/UnityDefaultTheme.tss
生成一个默认的运行时主题资源。虽然您可以从头开始创建 TSS,但要使所有默认的 UI 控件都能工作,您必须导入默认的运行时主题,然后覆盖或添加新的样式以创建自定义主题。
要创建一个新的 TSS
使用自定义样式创建一个或多个 USS 文件。
执行以下操作之一
将您的样式 USS 文件导入您的主题。
您的自定义主题也会出现在 UI Builder 的 视口应用程序在用户屏幕上的可见区域。
参见 术语表 的主题列表中。要预览您的主题,请从 视口 中选择它。
您可以 在 UXML 中引用 TSS 或 C#,方法与使用 USS 相同。
您还可以将 TSS 设置为 面板设置 资源的默认主题。如果您有多个面板设置,则每个面板设置可以使用不同的 TSS 文件。
注意:如果您为面板设置资源设置了 TSS,它不会使 TSS 成为整个项目的全局样式。您仍然需要在 UXML 或 C# 中引用 TSS。
您可以使用 TSS 资源的 检查器一个 Unity 窗口,显示有关当前选定的游戏对象、资源或项目设置的信息,允许您检查和编辑值。 更多信息
参见 术语表 窗口或 @import
规则导入主题。
注意:如果您在当前 TSS 和导入的样式表中都定义了 USS 变量或样式,则当前 TSS 会覆盖导入的样式表。
@import
规则导入默认主题要导入默认的 Unity 运行时主题,您必须使用以下语法
@import url("unity-theme://default");
注意:此语法中的 URL 是一种特殊情况,它指的是引擎内部的内置默认主题。您不能将此语法用于任何其他主题。
@import
规则导入其他主题要导入除默认主题以外的主题或 USS 文件,请使用以下语法
@import url("<path-to-file>/<file-name-with-extension>");
您可以使用相对路径或绝对路径
Assets
文件夹开始,并以 /
或 project://database/
开头。例如,/Assets/myFolder/myFile.uss
或 project://database/Assets/myFolder/myFile.uss
。/
。例如,../myFolder/myFile.uss
。
注意:要引用包中的文件,请使用从 Packages
文件夹开始的包文件的绝对路径。例如,/Packages/com.unity.package.name/file-name.uss
或 project://database/Packages/com.unity.package.name/file-name.uss
。您必须使用 com.unity.package.name
的格式而不是 package name
作为包名。