除了 Unity 中的默认字符串和精灵值之外,如何向 Dropdown OptionData 添加更多 UI 元素?
Posted
技术标签:
【中文标题】除了 Unity 中的默认字符串和精灵值之外,如何向 Dropdown OptionData 添加更多 UI 元素?【英文标题】:How to add more UI elements to Dropdown OptionData except default string and sprite values in Unity? 【发布时间】:2021-10-13 22:31:35 【问题描述】:我有一个 json 文件,其中包含有关国家/地区的一些信息。我的场景中有一个下拉菜单。在该下拉列表中,我显示了国旗和国名。我从该 json 文件中检索国家名称和标志路径。我的 json 文件:
我的县数据脚本:
我现在的看法是这样的:
到目前为止一切顺利。但是我想在那里再显示一个“字符串(或整数)”字段,但下拉元数据无法修改,它只允许我添加(字符串文本、Sprite 图像)。
下拉元数据:
在我目前的情况下,这些是国名,flagpaths。我想我应该能够做类似 OptionData(string text, Sprite image, string/int) 的事情,这样我就可以从我的 json 中检索“coinPlaces”值(这里是“1”)并在下拉菜单中显示它。 这就是我想要的样子:
在场景中,我可以将任何我想要的内容添加到 Dropdowns 模板中,如下所示:
但是,即使我可以从 json 中获取“coinPlaces”值,我也无法在下拉列表中显示它,因为我无法更改元数据。
【问题讨论】:
【参考方案1】:当您创建此类的新实例时,您在 C# 中使用 constructor
来初始化默认值。所以不可能给算子加币值。
我认为这里最好的方法是让另一个类从这个元数据类继承
【讨论】:
以上是关于除了 Unity 中的默认字符串和精灵值之外,如何向 Dropdown OptionData 添加更多 UI 元素?的主要内容,如果未能解决你的问题,请参考以下文章