检查密钥是否存在

时间:2014-03-31 11:06:36

标签: c# dictionary unity3d

我正在尝试使用userimages创建一个Dictionary。对于每个游戏,我运行一个方法,我添加对手图像,但由于我能够多次对抗同一个对手,我将图像存储在字典列表中,对手ID为关键。我的想法是检查对手的图像是否已经在字典中并从那里获取而不是再次加载它。我试图这样做:

IEnumerator getOppImages(int gobject, string imageurl, string oppID){

    if(oppimages.ContainsKey(oppID)){

        UITexture picture = GameObject.Find("Game"+gobject+"/Background/ProfileImg").GetComponent<UITexture>();
        picture.mainTexture = oppimages[oppID];

    } else {

        var oppImageRequest = new WWW(imageurl);
        yield return oppImageRequest;
        oppimages.Add(oppID,oppImageRequest.texture);

        UITexture picture = GameObject.Find("Game"+gobject+"/Background/ProfileImg").GetComponent<UITexture>();
        picture.mainTexture = oppImageRequest.texture;

    }

} 

这里的问题是它似乎没有对&#34; if(oppimages.ContainsKey(oppID)){&#34;进行反应。我这样做是错的还是我错过了什么?

希望得到帮助并提前致谢:-)

-------------------- EDIT ------------------

以下是我创建词典的方法:

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

oppID可能如下所示:QonTtQV9Px

0 个答案:

没有答案