c# - 将值传递给匿名函数

标签 c# unity-game-engine

我有以下电话:

GameSmart.HighScores.Load(Order.Descending, (HighScoresLoadedResponse response) => {
    foreach(Score score in response.data.scores){
        GameSmart.GetImage(score.avatar, (Sprite sprite) => {
            print(score.score);
        });
    }
});

在我的foreach中,我可以以某种方式将score的值传递给匿名函数以在执行匿名函数时使用吗?每次匿名函数执行时,我现在总是显示 Score 数组中的最后一个值。

这是GetImage的定义

public static void GetImage(string url, Action<Sprite> onComplete = null)

最佳答案

我现在无法测试它,但我相信这应该有效:

GameSmart.HighScores.Load(Order.Descending, (HighScoresLoadedResponse response) => {
    foreach(Score score in response.data.scores){
        var scoreRef = score;
        GameSmart.GetImage(score.avatar, (Sprite sprite) => {
            print(scoreRef.score);
        });
    }
});

关于c# - 将值传递给匿名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36209496/

相关文章:

c# - 如何在 C# 文件中自动放置标题文本(版权声明等)?

c# - 如何确定一个矩形是否完全包含在另一个矩形中?

c# - 将 Xml 反序列化为 List<T> - xmlns ='' 不是预期的

ios - 如何减小 Unity iOS Build 的大小并提高速度

c# - Unity3D 射击游戏 - 所有敌人被消灭后如何切换到下一关?

c# - 如何使用Nest Elasticsearch更新嵌套对象?

c# - 从 Fortify sourceanalyzer 命令行获取文本输出

c# - 是否可以使用 Bazel 构建 Unity3D 项目?

c# - 在逗号分隔列表中查找字符串值

c# - 需要有关通过触发器访问的游戏对象刚体的建议