【问题标题】:Saving Texture2D in Dictionary and retrieve it afterwards在字典中保存 Texture2D 并在之后检索它
【发布时间】:2014-03-31 07:08:50
【问题描述】:

我正在将 Parse.com 中的个人资料图片导入到我的统一项目中,并将它们插入到字典列表中,其中特定用户 ID 作为键,图像 (Texture2D) 作为值,如下所示:

public Dictionary<string, string> oppimageslinks = new Dictionary<string, string>();
public Dictionary<string, Texture2D> oppimages = new Dictionary<string, Texture2D>();

foreach(KeyValuePair<string, string> image in oppimageslinks){

    var oppImageRequest = new WWW(image.Value);
    yield return oppImageRequest;
    oppimages.Add(image.Key,oppImageRequest.texture);

}

这部分工作得很好。现在,我的问题是之后如何将 Texture2D 放入我的游戏对象中?以下是我的尝试:

if(oppimages.ContainsKey(game.Value[2])){
    UITexture picture = GameObject.Find("Game"+mc+"/Background/ProfileImg").GetComponent<UITexture>();
    picture.mainTexture = oppimages.Value;
}

game.Value[2] 是当前对手的userid。

尝试执行此操作时出现此错误:

键入 System.Collections.Generic.Dictionary&lt;string,UnityEngine.Texture2D&gt;' does not contain a definition forValue' 并且找不到扩展方法 Value' of typeSystem.Collections.Generic.Dictionary'(您是否缺少 using 指令或程序集引用?)

我不知道如何解决这个问题,希望能得到一些帮助。

【问题讨论】:

    标签: c# unity3d


    【解决方案1】:

    我不知道发生了什么。也许你可以试试这个?

    if(oppimages.ContainsKey(game.Value[2])){
    UITexture picture = GameObject.Find("Game"+mc+"/Background/ProfileImg").GetComponent<UITexture>();
    picture.mainTexture = oppimages[game.Value[2]];
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-27
      • 1970-01-01
      • 1970-01-01
      • 2016-02-02
      • 2016-12-18
      • 2018-06-23
      • 2012-07-29
      相关资源
      最近更新 更多