using Mono.Event; using Sirenix.OdinInspector; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI.Extensions; namespace UnityTest.ZXL { public class ObjectComponent : MonoBehaviour, IPointerClickHandler { /// /// 当前物体的名字(可能存在名字对不上的情况,需要进行深度查找) /// public string objectName; /// /// 描述 /// public string desc; public void Clicked() { Debug.Log($"点击了{objectName}"); EventManager.Instance.FireNow(this, new ClickObjectEventArgs(this.gameObject)); } #if UNITY_EDITOR [Button] void Add() { var component = gameObject.GetOrAddComponent(); // component.OnPointerClick(); } #endif public void OnPointerClick(PointerEventData eventData) { Clicked(); } } }