web-dev-qa-db-fra.com

Événement onClick pour Image in Unity

Est-il possible d'ajouter la fonction "onClick" à une image (un composant d'un canevas) dans 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>();

Comment puis-je ajouter une action pour l'événement "onClick"?

11
Quicki

En supposant que ClickAction est votre script, vous pouvez implémenter la fonctionnalité OnClick de la manière suivante:

using UnityEngine.EventSystems;

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

L'espace de noms UnityEngine.EventSystems vous fournit l'interface IPointerClickHandler. Lorsque vous cliquez sur votre image, le code à l'intérieur de OnPointerClick s'exécute.

25
Ian H.