我在代码中添加了一个按钮列表,我想为其添加一个点击监听器。
我可以添加监听器,问题是我想知道调用监听器的按钮。
我尝试了以下方法,但是传递给侦听器的值始终相同:
foreach (...)
{
var button = (Button)GameObject.Instantiate(...);
packIndex++;
button.onClick.AddListener(() => this.OnButtonClick(packIndex));
}
public void OnButtonClick(int idx)
{
// idx is always the latest value in the above loop
}
TL;博士
您如何从按钮单击侦听器中找到调用者?