EventTrigger组件类在UnityEngine.EventSystems命名空间中
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using UnityEngine.Events;
public Image img;
void Start () {
EventTrigger trigger = img.GetComponent<EventTrigger>();
trigger.triggers = new List<EventTrigger.Entry>();
EventTrigger.Entry entry = new EventTrigger.Entry();
entry.eventID = EventTriggerType.PointerClick;
UnityAction<BaseEventData> action = new UnityAction<BaseEventData>(OnImageClick);
entry.callback.AddListener(action);
trigger.triggers.Add(entry);
}
private void OnImageClick(BaseEventData data)
{
Debug.Log("图片点击");
}可以看出,EventTrigger可以有一个List的触发器,每一个触发器Entry都有它的类型eventID,和被触发后的回调方法callback
回调方法是一个unity的委托方法(在UnityEngine.Events命名空间),参数必须是BaseEventData