TMP Dropdown
TMP_Dropdown 是一个标准的下拉菜单,点击时显示选项列表,其中可以选择一个。应始终使用它而不是 Unity 旧版的 UI.Dropdown 组件。
属性
| 属性 | 类型 | 描述 |
|---|---|---|
| value | int | 获取或设置下拉菜单中选中元素的索引。 |
| IsExpanded | bool | 获取一个值,指示下拉菜单是否展开。 |
| enable | bool | 启用/禁用附加的组件 |
方法
| 函数 | 输入 | 输出 | 描述 |
|---|---|---|---|
| SetValueWithoutNotify | int | void | 设置输入字段的值,而不调用 onValueChanged。 |
| RefreshShownValue | 刷新当前选中选项的文本和图像(如果可用)。 | ||
| ClearOptions | 从下拉菜单中移除所有选项。 | ||
| Show | 显示下拉菜单。计划下拉菜单滚动以确保下拉菜单包含在屏幕内。TMP 假定 Canvas 是下拉菜单必须保持在其中的屏幕。 | ||
| Hide | 隐藏下拉列表。 |
相关类
Udon 可以访问与 TMP_Dropdown 相关的两个额外类。
VRCTMPDropdownExtension
此类是 VRChat SDK 的一部分。它允许你向下拉菜单添加选项。
| 函数 | 输入 | 输出 | 描述 |
|---|---|---|---|
| AddOptions | TMP_Dropdown, string[] | 将字符串数组添加到下拉菜单。 | |
| AddOptions | TMP_Dropdown, sprite[] | 将精灵数组添加到下拉菜单。 | |
| AddOptions | TMP_Dropdown, OptionData[] | 将 TMP_Dropdown.OptionData 数组添加到下拉菜单。 |
扩展方法
在 UdonSharp 中,AddOptions 是一个扩展方法。
你可以输入 dropdown.AddOptions(options) 而不是 AddOptions(dropdown, options)。确保文件中包含了 VRC.SDK3.Components 命名空间。
TMP_Dropdown.OptionData
这是 TextMesh Pro 内置的。它允许你向下拉菜单添加字符串和精灵的组合。
| 函数 | 输入 | 输出 | 描述 |
|---|---|---|---|
| 构造函数 | string | OptionData | 创建一个以文本作为选项的 OptionData 对象。 |
| 构造函数 | sprite | OptionData | 创建一个以精灵作为选项的 OptionData 对象。 |
| 构造函数 | string, sprite | OptionData | 创建一个以文本和精灵作为选项的 OptionData 对象。 |
如何向下拉菜单添加精灵
下拉菜单可以为每个选项显示不同的精灵。你需要正确设置下拉菜单:
- 向下拉菜单添加一个图像。
- 向模板添加一个图像。

- 在下拉菜单的
Caption Image和Item Image字段中添加正确的引用。

- 成功!下拉菜单现在可以显示精灵了。