如何在运行时将onclick侦听器添加到游戏对象统一[重复]
Posted
技术标签:
【中文标题】如何在运行时将onclick侦听器添加到游戏对象统一[重复]【英文标题】:how to add onclick listener to a gameobject in runtime In unity [duplicate] 【发布时间】:2017-10-02 14:07:43 【问题描述】:我希望我的问题没有重复;我有很多 Gameobjects
团结一致。
我需要在运行时将onclicklistener
添加到带有脚本的游戏对象中......
请帮忙。
【问题讨论】:
【参考方案1】:这是在运行时添加EventTrigger
的代码:
YourGameObject.AddComponent(typeof(EventTrigger));
EventTrigger trigger = YourGameObject.GetComponent<EventTrigger>();
EventTrigger.Entry entry = new EventTrigger.Entry();
entry.eventID = EventTriggerType.PointerClick;
entry.callback.AddListener( (eventData) => /* Your code here */ );
trigger.triggers.Add(entry);
【讨论】:
虽然这是正确的,但值得注意的是,您应该在脚本中实现IPointerDownHandler
,然后在运行时将该脚本附加到游戏对象。众所周知,EventTrigger
在附加到游戏对象时会很慢,尤其是在移动设备上。
@Programmer 感谢您指出这一点:)
Np 但这个答案也应该知道,所以我投票赞成以确保它不会被删除。
@LudovicFeltz hi ludvic ....我使用这个 solotion 但不适合我
@LudovicFeltz 我的代码:GameObject.Find ("r1").AddComponent(typeof(EventTrigger)); EventTrigger trigger = GameObject.Find ("r1").GetComponent以上是关于如何在运行时将onclick侦听器添加到游戏对象统一[重复]的主要内容,如果未能解决你的问题,请参考以下文章
按钮 onClick 事件侦听器在 Electron 应用程序中不起作用