要应用相同的 i 值,可以将 i 的值复制给一个新的变量,然后在 lambda 表达式中使用该变量。以下是一个示例代码:
for (int i = 0; i < itemCount; i++)
{
int index = i; // 复制 i 的值到新的变量 index
// 创建按钮,并添加点击事件监听器
Button button = CreateButton();
button.onClick.AddListener(() => ItemButton(index));
}
void ItemButton(int index)
{
// 在这里使用 index 值
Debug.Log("点击了按钮,索引值为:" + index);
}
在上述示例中,我们将 i 的值复制给新的变量 index,并在 lambda 表达式中使用 index。这样可以确保每个按钮的点击事件监听器都使用了正确的索引值。