自己写一个类来添加事件鼠标左边按钮事件监听

using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
using System.Collections;

namespace UIWidgets {
    /// <summary>
    /// OnClick listener.
    /// </summary>
    [AddComponentMenu("UI/UIWidgets/AccordionItemComponent")]
    public class AccordionItemComponent : MonoBehaviour, IPointerClickHandler, ISubmitHandler {

        /// <summary>
        /// What to do when the event system send a pointer click event.
        /// </summary>
        public UnityEvent OnClick = new UnityEvent();

        /// <summary>
        /// Raises the pointer click event.
        /// </summary>
        /// <param name="eventData">Event data.</param>
        public virtual void OnPointerClick(PointerEventData eventData)
        {
            if (eventData.button!=PointerEventData.InputButton.Left)
            {
                return;
            }

            OnClick.Invoke();
        }

        /// <summary>
        /// Raises the submit event.
        /// </summary>
        /// <param name="eventData">Event data.</param>
        public virtual void OnSubmit(BaseEventData eventData)
        {
            OnClick.Invoke();
        }
    }
}

 

posted @ 2018-03-12 10:44  智能化的代码  阅读(206)  评论(0编辑  收藏  举报