我获得了Unity3D 5.2并首次使用了Dropdown GUI元素。它很容易在insepctor中使用,但我想要显示选项,取决于我在Resources / Shapes /
中的文件因此下拉列表应显示我在Resources / Shapes /中获得的所有文件名,但我无法在附加的C#脚本中获取此属性。 阅读下拉手册后,应该有一个名为"选项"它应该有一个字符串和一个图像变量。 (所以我理解它的二维数组类型)
不幸的是我不能使用以下脚本(伪代码,因为它不起作用)
GameObject obj = GameObject.Find("Dropdown");
var info = new DirectoryInfo("Assets/Resources/Shapes");
var fileInfo = info.GetFiles();
foreach (var file in fileInfo)
{
//Add OptionsString Pseudo-Code
obj.Options += file; // Options doesnt exist
}
任何人都可以向我解释如何在我的Dropdown菜单上操作Options属性,我无法在google中找到任何内容。只有在Unity拥有内置下拉菜单之前的旧方法
提前致谢
答案 0 :(得分:6)
List<string> list = new List<string> { "option1", "option2" };
var dropdown = GetComponent<Dropdown>();
dropdown.options.Clear();
foreach (string option in list)
{
dropdown.options.Add(new Dropdown.OptionData(option));
}
答案 1 :(得分:3)
找到答案:
Dropdown.OptionData list = new Dropdown.OptionData("Name");
obj.GetComponent<Dropdown>().options.Add(list);