UGUI Button OnClick事件统一管理

在本文,你将学到如何将UGUI 按键的OnClick事件进行动态添加,统一管理。

代码块:

using UnityEngine;
using UnityEngine.UI;
public class TestButton : MonoBehaviour
{
    Button[] Buttons;
    void Start()
    {
        Buttons = FindObjectsOfType<Button>();
        foreach (var item in Buttons)
        {
            item.onClick.AddListener(() => OnButtonClicked(item));
        }
    }
    private void OnButtonClicked(Button item)
    {
        Debug.Log("你按下了:"+item.name );
        switch (item.name) 
        {
            case "Button01":
                //这里写你的逻辑代码
                break;
            case "Button02":
                //这里写你的逻辑代码
                break;
            case "Button03":
                //这里写你的逻辑代码
                break;
        }
    }
}

Debug输出:

Debug.Log测试结果

标签:Unity3D、UGUI、Button、EventSystem、onClick、AddListener、动态添加事件


快捷访问:

  1. Unity3D 如何设置CubeMap
  2. UGUI Button OnClick事件统一管理 ←您在这里
  3. UGUI Slider onValueChanged事件统一管理
  4. UGUI Toggle onValueChanged事件统一管理
  5. Unity3D监测按键输入(快捷键)的有效方法
  6. Unity3D Editor模式下的System.IO数据访问
  7. Unity3D 挂载的脚本取消勾选居然还会运行!!
  8. Unity 代码动态勾选或取消材质球上的选项
  9. Unity SerializeField序列化字段导致Bug的跳坑笔记
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容