Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

onClick event for Image in Unity

Is it possible add "onClick" function to an Image (a component of a canvas) in Unity ?

var obj = new GameObject();
Image NewImage = obj.AddComponent<Image>();
NewImage.sprite = Resources.Load<Sprite>(a + "/" + obj.name) as Sprite;
obj.SetActive(true);
obj.AddComponent<ClickAction>();

How can I add action for "onClick" event?

like image 324
Quicki Avatar asked Nov 12 '16 20:11

Quicki


1 Answers

Supposing that ClickAction is your script, you could implement the OnClick functionality in the following way:

using UnityEngine.EventSystems;

public class ClickAction : MonoBehaviour, IPointerClickHandler
{ 
    public void OnPointerClick(PointerEventData eventData)
    {
        // OnClick code goes here ...
    }
}

The namespace UnityEngine.EventSystems supplies you with the IPointerClickHandler interface. When your image is clicked, the code inside OnPointerClick will run.

like image 72
Ian H. Avatar answered Sep 30 '22 13:09

Ian H.