Unity动态绑定Button事件
1、单个按钮不带参数
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Test : MonoBehaviour
{
public Button btn;
private void Start()
{
btn.onClick.AddListener(BtnOnClick);
}
public void BtnOnClick()
{
}
}
2、单个按钮带参数
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Test : MonoBehaviour
{
public Button btn;
private void Start()
{
btn.onClick.AddListener(delegate { BtnOnClick(0); });
}
public void BtnOnClick(int value)
{
Debug.Log("打印信息");
}
}
3、多个按钮带参数
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Test : MonoBehaviour
{
public Button[] btn;
private void Start()
{
for (int i = 0; i < btn.Length; i++)
{
int a = i;
btn[i].onClick.AddListener(delegate { BtnOnClick(a); });
}
}
public void BtnOnClick(int value)
{
Debug.Log("打印信息" + value);
}
}