Unity3d Unity2D,如何在GUI上显示图标图像。列表中的标签?

Unity3d Unity2D,如何在GUI上显示图标图像。列表中的标签?,unity3d,unityscript,Unity3d,Unityscript,我曾试图在互联网上阅读大部分类似的帖子,但我还是输了。所以我希望任何人都能给我一些指导。非常感谢!我想在列表上显示图标,图标列表是常量图像。我怎样才能调用该文件?我做的项目是2D的,我只想在GUI上显示图标。对于其他信息,我只是尝试使用编程方式调用图像,但失败了。下面的代码是我实现图像代码之前的原始代码 GUILayout.BeginVertical ("box"); GUILayout.Label ("Staff"); int maxHeight

我曾试图在互联网上阅读大部分类似的帖子,但我还是输了。所以我希望任何人都能给我一些指导。非常感谢!我想在列表上显示图标,图标列表是常量图像。我怎样才能调用该文件?我做的项目是2D的,我只想在GUI上显示图标。对于其他信息,我只是尝试使用编程方式调用图像,但失败了。下面的代码是我实现图像代码之前的原始代码

GUILayout.BeginVertical ("box");
            GUILayout.Label ("Staff");
            int maxHeight = 15;
            int maxHeightRange = maxHeight * 35;
            scrollPosition = GUI.BeginScrollView(new Rect(50, 25, 400, 175), scrollPosition, new Rect(0, 0, 200, maxHeightRange));
            for(int i = 0; i < maxHeight; i++)
            {
                GUILayout.BeginHorizontal ("box");
                GUILayout.Label ("first");
                GUILayout.Label (i.ToString());
                GUILayout.Label ("satu");
                GUILayout.Label ("icon"); //Icon i want to show is here.
                GUILayout.EndHorizontal ();
            }
            GUI.EndScrollView();
            GUILayout.FlexibleSpace ();
            if (GUILayout.Button ("Exit Shrink Fade")) {
                LzTbStaff.exitShrinkFade (0.25f);
                LzShwStaff = false;
                print("xxx");
            }
            GUILayout.EndVertical ();

我在游戏中也遇到过类似的情况,我想在highscore页面中使用GUI显示基于玩家国家的国旗,因此我在“资产/资源/国旗”中有一个文件夹,其中包含所有国家代码(例如:br.png、us.png、jp.png、kr.png等)

函数Resources.Load()仅适用于文件夹“assets/Resources”中的资产,并且名称必须仅为文件名,不带扩展名

例如:

Texture2D myTexture = Resources.Load("Flags/br") as Texture2D;
以及我在项目中使用的代码:

Texture2D myTexture = Resources.Load("Flags/" + scoreRow.ISOCountryCode.ToLower()) as Texture2D;
if (myTexture != null)
{
    GUI.DrawTexture(new Rect(marginRight, marginTop, lineWidth, lineHeight), myTexture);
}
else
{
    //Debug.Log("invalid flag: " + scoreRow.ISOCountryCode);
}

使用Texture2D,您可以使用GUI.DrawTexture()绘制到屏幕上。

GUI.DrawTexture。。。在谷歌搜索…这篇文章被自动标记为低质量,因为它太短/只有代码。您是否介意通过添加一些文本来扩展它,解释它是如何解决问题的?
Texture2D myTexture = Resources.Load("Flags/br") as Texture2D;
Texture2D myTexture = Resources.Load("Flags/" + scoreRow.ISOCountryCode.ToLower()) as Texture2D;
if (myTexture != null)
{
    GUI.DrawTexture(new Rect(marginRight, marginTop, lineWidth, lineHeight), myTexture);
}
else
{
    //Debug.Log("invalid flag: " + scoreRow.ISOCountryCode);
}