我有一个系统可以根据目录中的文件创建按钮。我需要根据按钮的Text组件文本属性的子对象读取来调用脚本中的函数。基本上,我需要修改每个按钮以调用具有特定参数的函数。我该怎么做?
答案 0 :(得分:1)
我认为你需要检查一下:事件触发器脚本
https://docs.unity3d.com/ScriptReference/EventSystems.EventTrigger.html
事件触发器脚本允许您在触发器上调用子组件的方法(单击,鼠标悬停..)。
(请查看:http://answers.unity3d.com/questions/974622/unity-502f1-ui-button-onclick-function.html)
编辑:
如果您事先不知道要分配哪种方法: 您可以使用System.Reflection来检索关联的方法。
synchronized moveToLeft() {
x-=1;
x2-=1;
}
我希望这会对你有所帮助:
对于每个按钮,请附加组件"事件触发器"和你的脚本与你的所有方法。
然后使用反射来获取相关的方法。
最后,使用以下命令设置事件触发器组件:
button.onClick.AddListener(FunctionToCall);