zoukankan      html  css  js  c++  java
  • Unity 用脚本给EventTrigger添加各种事件

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.EventSystems;
    
    public class Trigger : MonoBehaviour
    {
        EventTrigger eventTrigger;
        // Start is called before the first frame update
        void Start()
        {
            eventTrigger = GetComponent<EventTrigger>();
    
            AddPointerEnterEvent();
            AddPointerExitEvent();
            AddPointerClickEvent();
        }
    
        void AddPointerEnterEvent()
        {
            EventTrigger.Entry entry = new EventTrigger.Entry();
            entry.eventID = EventTriggerType.PointerEnter;
            entry.callback = new EventTrigger.TriggerEvent();
            UnityEngine.Events.UnityAction<BaseEventData> callback = new UnityEngine.Events.UnityAction<BaseEventData>(PointerEnter);
            entry.callback.AddListener(callback);
            eventTrigger.triggers.Add(entry);
            Debug.Log("AddPointerEnterEvent");
        }
    
        void AddPointerExitEvent()
        {
            EventTrigger.Entry entry = new EventTrigger.Entry();
            entry.eventID = EventTriggerType.PointerExit;
            entry.callback = new EventTrigger.TriggerEvent();
            UnityEngine.Events.UnityAction<BaseEventData> callback = new UnityEngine.Events.UnityAction<BaseEventData>(PointerExit);
            entry.callback.AddListener(callback);
            eventTrigger.triggers.Add(entry);
            Debug.Log("AddPointerExitEvent");
        }
    
        void AddPointerClickEvent()
        {
            EventTrigger.Entry entry = new EventTrigger.Entry();
            entry.eventID = EventTriggerType.PointerClick;
            entry.callback = new EventTrigger.TriggerEvent();
            UnityEngine.Events.UnityAction<BaseEventData> callback = new UnityEngine.Events.UnityAction<BaseEventData>(PointerClick);
            entry.callback.AddListener(callback);
            eventTrigger.triggers.Add(entry);
            Debug.Log("AddPointerClickEvent");
        }
    
        void PointerEnter(BaseEventData baseEventData)
        {
            Debug.Log("enter");
        }
    
        void PointerExit(BaseEventData baseEventData)
        {
            Debug.Log("exit");
        }
    
        void PointerClick(BaseEventData baseEventData)
        {
            Debug.Log("click");
        }
    }
    View Code

    用脚本动态给EventTrigger添加各种事件

  • 相关阅读:
    foreach在引用时的陷阱
    宝塔ngnix配置tp5
    三维空间建模方法之LOD模型算法
    Weblogic部署项目三种方式
    WebLogic使用总结
    SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
    BIM特点及格式文件说明
    BIM与GIS
    三维模型格式
    单点登录
  • 原文地址:https://www.cnblogs.com/Peng18233754457/p/11813837.html
Copyright © 2011-2022 走看看