1

我正在将事件监听器添加到 Unity 5.3 中 foreach 循环中的一些按钮。

 foreach (Button btn in buttons)
 {
    btn.onClick.AddListener(() => levelBtnClicked());
 }

如何获得对单击的按钮的按钮引用?所以我可以在 levelBtnClicked 函数中检查按钮的属性。

4

1 回答 1

0

使levelBtnClicked函数Button作为参数,然后在循环期间将每个实例传递给参数。Button

Button[] buttons;

void Start()
{
    foreach (Button btn in buttons)
    {
        btn.onClick.AddListener(() => levelBtnClicked(btn));
    }
}

void levelBtnClicked(Button buttonClicked)
{
buttonClicked.image = ......
buttonClicked.name....
Debug.Log("Button Clicked: "+buttonClicked.name);
}
于 2016-04-13T15:05:31.710 回答