要应用相同的 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。这样可以确保每个按钮的点击事件监听器都使用了正确的索引值。