c# - Unity中Image的onClick事件

标签 c# unity3d onclick

是否可以在 Unity 中为图像( Canvas 的一个组件)添加“onClick”功能?

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>();

如何为“onClick”事件添加 Action ?

最佳答案

假设 ClickAction 是您的脚本,您可以通过以下方式实现 OnClick 功能:

using UnityEngine.EventSystems;

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

命名空间 UnityEngine.EventSystems 为您提供了 IPointerClickHandler 接口(interface)。单击您的图像时,OnPointerClick 中的代码将运行。

关于c# - Unity中Image的onClick事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40567303/

相关文章:

c# - 如何从 getter 或 setter 调用异步方法?

c# - 编译/优化后如何查看 C# 代码?

c# - .NET TcpSocket 编程

javascript - 为什么 `onclick()`在表单提交之前被调用?

javascript - 在 javascript 中 eval 的替代用法

C# 创建对象 obj = new T()?

c# - 如何限制物体旋转到一定程度?

c# - 在 UniRX 中将一个 Observable 映射到另一个不同类型的 Observable

Firebase 存储 SDK 在 Unity Web Build 中不起作用

PHP:未显示变量值