有实现接口,button注册,添加EventTrigger三种。
现在是第四中方法,用代码动态实现
void Start()
{
var trigger = GetComponent<EventTrigger>();
//实例化delegates
trigger.triggers = new System.Collections.Generic.List<EventTrigger.Entry>();
EventTrigger.Entry entry = new EventTrigger.Entry();
//设置事件类型
entry.eventID = EventTriggerType.PointerEnter;
//设置回调函数
entry.callback = new EventTrigger.TriggerEvent();
UnityAction<BaseEventData> callback = new UnityAction<BaseEventData>(Method);
entry.callback.AddListener(callback);
//添加事件触发记录到gameobjec的事件触发组件
trigger.triggers.Add(entry);
}
public void Method(BaseEventData data)
{
Debug.Log(3);
}