基本信息
源码名称:EventTriggerListener对UI事件的封装
源码大小:0.85KB
文件格式:.zip
开发语言:C#
更新时间:2020-07-28
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
EventTriggerListener.cs 是Unity3D编写通用的事件监听
using UnityEngine;
using UnityEngine.EventSystems;
public class EventTriggerListener : UnityEngine.EventSystems.EventTrigger
{
public delegate void VoidDelegate(GameObject go);
public delegate void BoolDelegate(GameObject go, bool state);
public delegate void FloatDelegate(GameObject go, float delta);
public delegate void VectorDelegate(GameObject go, Vector2 delta);
public delegate void ObjectDelegate(GameObject go, GameObject obj);
public delegate void KeyCodeDelegate(GameObject go, KeyCode key);
public delegate void PointerEventDataDelegate(PointerEventData eventdata);
public object parameter;
public object[] args;
public VoidDelegate onBeginDrag;
public VoidDelegate onCancel;
public VoidDelegate onDeselect;
public VectorDelegate onDrag;
public VoidDelegate onDrop;
public VoidDelegate onEndDrag;
public VoidDelegate onInitializePotentialDrag;
public VoidDelegate onMove;
public VoidDelegate onClick;
public VoidDelegate onDown;
public VoidDelegate onEnter;
public VoidDelegate onExit;
public VoidDelegate onUp;
public VoidDelegate onSelect;
public VoidDelegate onUpdateSelect;
public PointerEventDataDelegate onDownEventData;
public PointerEventDataDelegate onDragEventData;
public PointerEventDataDelegate onClickEventData;
public PointerEventDataDelegate PointerEventDataCall;
static public EventTriggerListener Get(GameObject go)
{
EventTriggerListener listener = go.GetComponent<EventTriggerListener>();
if (listener == null) listener = go.AddComponent<EventTriggerListener>();
return listener;
}
public override void OnBeginDrag(PointerEventData eventData)
{
if (onBeginDrag != null) onBeginDrag(gameObject);
}
public override void OnCancel(BaseEventData eventData)
{
if (onCancel != null) onCancel(gameObject);
}
public override void OnDeselect(BaseEventData eventData)
{
if (onDeselect != null) onDeselect(gameObject);
}
public override void OnDrag(PointerEventData eventData)
{
if (onDrag != null) onDrag(gameObject, eventData.delta);
onDragEventData?.Invoke(eventData);
}
public override void OnDrop(PointerEventData eventData)
{
if (onDrop != null) onDrop(gameObject);
}
public override void OnEndDrag(PointerEventData eventData)
{
if (onEndDrag != null) onEndDrag(gameObject);
}
public override void OnInitializePotentialDrag(PointerEventData eventData)
{
if (onInitializePotentialDrag != null) onInitializePotentialDrag(gameObject);
}
public override void OnMove(AxisEventData eventData)
{
if (onMove != null) onMove(gameObject);
}
public override void OnPointerClick(PointerEventData eventData)
{
if (onClick != null) onClick(gameObject);
onClickEventData?.Invoke(eventData);
}
public override void OnPointerDown(PointerEventData eventData)
{
if (onDown != null) onDown(gameObject);
onDownEventData?.Invoke(eventData);
}
public override void OnPointerEnter(PointerEventData eventData)
{
if (onEnter != null) onEnter(gameObject);
}
public override void OnPointerExit(PointerEventData eventData)
{
if (onExit != null) onExit(gameObject);
}
public override void OnPointerUp(PointerEventData eventData)
{
if (onUp != null) onUp(gameObject);
}
public override void OnSelect(BaseEventData eventData)
{
if (onSelect != null) onSelect(gameObject);
}
public override void OnUpdateSelected(BaseEventData eventData)
{
if (onUpdateSelect != null) onUpdateSelect(gameObject);
}
}