EventTrigger (OnDrag)

Hi All.
I attached EventTrigger Script on Image Object.
And Then Wrote Handler like this to set EventTrigger`s List.

public void OnDragZone(PointerEventData data)
{
Debug.Log(“OnDragZone”);
}

But EventTrigger doesn`t accept above method.

Teach me how to use OnDrag EventTrigger.

1 Like

The EventTrigger Script uses EventSystems.BaseEventData, you are using EventSystems.PointerEventData as your parameter.

Without the EventTrigger Script, use something like this :

using UnityEngine.EventSystems;

public class DraggableObject : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler {

public void OnBeginDrag (PointerEventData pointerEventData) {}
public void OnDrag(PointerEventData pointerEventData) {}
public void OnEndDrag(PointerEventData pointerEventData) {}
}

1 Like

I have an alternative if you still prefer to use a TriggerEvent to access your script.
You can get EventSystems.PointerEventData from the EventSystems.BaseEventData passed by the EventTrigger.

public void OnDragZone (BaseEventData baseData) {

PointerEventData pointerData = (PointerEventData)baseData;
}

2 Likes