【发布时间】:2017-01-18 20:13:53
【问题描述】:
我有一个根据目录中的文件创建按钮的系统。我需要根据按钮的 Text 组件文本属性的子对象读取的内容调用脚本中的函数。基本上,我需要修改每个按钮以调用具有特定参数的函数。我该怎么做?
【问题讨论】:
标签: events button unity3d onclick
我有一个根据目录中的文件创建按钮的系统。我需要根据按钮的 Text 组件文本属性的子对象读取的内容调用脚本中的函数。基本上,我需要修改每个按钮以调用具有特定参数的函数。我该怎么做?
【问题讨论】:
标签: events button unity3d onclick
我认为你需要检查这个:事件触发脚本
https://docs.unity3d.com/ScriptReference/EventSystems.EventTrigger.html
事件触发脚本允许您在触发时调用子组件的方法(单击、鼠标悬停......)。
(检查这个:http://answers.unity3d.com/questions/974622/unity-502f1-ui-button-onclick-function.html)
编辑:
如果您事先不知道要分配哪种方法: 您可以使用 System.Reflection 来检索关联的方法。
string name = "BtnAction";
MethodInfo m = t.GetMethod(name);
希望对你有帮助:
对于每个按钮,附加组件“事件触发器”和您的脚本以及您的所有方法。
然后使用反射获取关联的方法。
最后,使用以下方法设置事件触发器组件:
button.onClick.AddListener(FunctionToCall);
【讨论】: