版本:Unity 6 (6000.0)
语言:英语
UXML 元素 RectIntField
UXML 元素 RenderingLayerMaskField

UXML 元素 RepeatButton

当用户按下并按住 RepeatButton 时,它会执行重复的操作。您可以定义操作、延迟和间隔。当用户按下 RepeatButton 时,必须满足初始延迟才能开始执行第一个操作,然后它会以指定间隔重复执行。

注意:RepeatButton 没有与普通 Button 相同的样式。您可以将 .unity-button USS 类应用于它,以使其看起来像一个普通 Button。

创建 RepeatButton

虽然您可以使用 UXML 创建 RepeatButton,但您必须在 C# 中创建操作逻辑。以下 C# 示例创建了一个 RepeatButton,该按钮在按下并按住时会在控制台中记录一条消息

// The logging delays 100ms before starting and repeats every 50ms.
var repeatButton = new RepeatButton(() => { Debug.Log("Button being pressed"); }, 100, 50);
repeatButton.text = "Press and hold me";

// Apply the ".unity-button" USS class to make the RepeatButton look like a regular Button.
repeatButton.AddToClassList("unity-button");

C# 基类和命名空间

C# 类RepeatButton
命名空间UnityEngine.UIElements
基类TextElement

继承的 UXML 属性

此元素从其基类继承以下属性

名称 类型 描述
binding-path string 要绑定的目标属性的路径。
display-tooltip-when-elided boolean 如果为 true,则工具提示会显示省略文本的完整版本,并且如果之前已提供工具提示,它将被覆盖。
emoji-fallback-support boolean 指定系统在渲染文本时查找 Emoji 字符的顺序。如果启用此设置,将首先在全局 Emoji 回退列表中搜索在 Unicode 14.0 标准中定义为 Emoji 的字符。
enable-rich-text boolean 如果为 false,则不会解析富文本标签。
focusable boolean 如果元素可以获得焦点,则为 true。
parse-escape-sequences boolean 指定是否按原样显示转义序列,或者是否将它们替换为它们代表的字符。
tabindex int 用于在焦点环中对可聚焦项进行排序的整数。必须大于或等于零。
text string 要显示的文本。

更改此值将隐式调用 INotifyValueChanged_1.value 设置器,这将引发类型为字符串的 ChangeEvent_1

此元素还从 VisualElement 继承以下属性

名称 类型 描述
content-container string 子元素被添加到其中,通常与元素本身相同。
data-source Object 为该 VisualElement 分配一个数据源,该数据源会覆盖任何继承的数据源。此数据源由所有子元素继承。
data-source-path string 从数据源到值的路径。
data-source-type System.Type 可分配给此 VisualElement 的数据源的可能类型。

此信息仅由 UI Builder 用作提示,以便在设计时无法指定有效数据源时,为数据源路径字段提供一些完成。
language-direction UIElements.LanguageDirection 指示元素文本的方向性。该值将传播到元素的子元素。

将 languageDirection 设置为 RTL 会通过反转文本并适当地处理换行和单词换行来添加对从右到左 (RTL) 的基本支持。但是,它不提供全面的 RTL 支持,因为这将需要文本整形,包括字符的重新排序和 OpenType 字体功能支持。全面的 RTL 支持计划在未来的更新中提供,这将涉及处理语言、脚本和字体功能规范的额外 API。

为了增强此属性的 RTL 功能,用户可以探索 Unity Asset Store 中提供的第三方插件,并使用 ITextElementExperimentalFeatures.renderedText
name string 此 VisualElement 的名称。

使用此属性编写针对特定元素的 USS 选择器。标准做法是为元素提供唯一的名称。
picking-mode UIElements.PickingMode 确定此元素是否可以在鼠标事件或 IPanel.Pick 查询期间被选中。
style string 设置 VisualElement 样式值。
tooltip string 在用户将鼠标悬停在元素上一段时间后,在信息框内显示的文本。这仅在编辑器 UI(用户界面) 允许用户与您的应用程序交互。Unity 目前支持三种 UI 系统。 更多信息
参见 术语表
中受支持。
usage-hints UIElements.UsageHints 指定 VisualElement 的高级预期使用模式的提示值的组合。此属性只能在 VisualElement 尚未成为 Panel 的一部分时设置。一旦成为 Panel 的一部分,此属性实际上就变成了只读的,尝试更改它将抛出异常。正确 UsageHints 的规范推动系统根据预期的使用模式做出更好的决策,以处理或加速某些操作。请注意,这些提示不会影响行为或视觉结果,但只会影响面板和面板内元素的整体性能。建议始终考虑指定正确的 UsageHints,但请记住,在某些情况下,某些 UsageHints 可能会在内部被忽略(例如,由于目标平台上的硬件限制)。
view-data-key string 用于视图数据持久性,例如树展开状态、滚动位置或缩放级别。

此键用于从视图数据存储中保存和加载视图数据。如果您不设置此键,则相关 VisualElement 的持久性将被禁用。有关更多信息,请参阅 视图数据持久性

USS 类

下表列出了所有 C# 公共属性名称及其相关的 USS 选择器。

C# 属性 USS 选择器 描述
ussClassName .unity-repeat-button 此类型元素的 USS 类名。
ussClassName .unity-text-element 此类型元素的 USS 类名。
selectableUssClassName .unity-text-element__selectable 可选择文本元素的 USS 类名。
disabledUssClassName .unity-disabled 本地禁用元素的 USS 类名。

您还可以使用 检查器或 UI 工具包调试器中的匹配选择器部分 来查看哪些 USS 选择器会影响 VisualElement 在其层次结构的每个级别的组件。

其他资源

UXML 元素 RectIntField
UXML 元素 RenderingLayerMaskField