如何使用 Unity 中的代码获取/更改图像源名称? [英] How to get/change Image Source name with code in Unity?

查看:30
本文介绍了如何使用 Unity 中的代码获取/更改图像源名称?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们做了一个脚本,需要获取图片名,下面用笨拙的方式实现了这个任务,但是还是想知道有没有直接获取图片名的方法?

we made a script and need to get the image name, we implement this task with a clumsy way below, but we still want to know whether there is a way to get the image name directly?

public class CubeManager
{
    static public Dictionary<CubeType, string> cubeTypeDict = new Dictionary<CubeType, string>();
    static private Dictionary<string, GameObject> cubeDict = new Dictionary<string, GameObject>();
    static CubeManager()
    {
        cubeTypeDict.Add(CubeType.Wall01, "Wall01");
        cubeTypeDict.Add(CubeType.Wall02, "Wall02");
        cubeTypeDict.Add(CubeType.Wall03, "Wall03");
        cubeTypeDict.Add(CubeType.Wall04, "Wall04");
        cubeTypeDict.Add(CubeType.Wall05, "Wall05");
        cubeTypeDict.Add(CubeType.Wall06, "Wall06");
        cubeTypeDict.Add(CubeType.Wall07, "Wall07");
        cubeTypeDict.Add(CubeType.Wall08, "Wall08");
        cubeTypeDict.Add(CubeType.Wall09, "Wall09");
        cubeTypeDict.Add(CubeType.Wall10, "Wall10");
        cubeTypeDict.Add(CubeType.Wall11, "Wall11");
        cubeTypeDict.Add(CubeType.Wall12, "Wall12");
        cubeTypeDict.Add(CubeType.Wall13, "Wall13");
        cubeTypeDict.Add(CubeType.Wall14, "Wall14");
        cubeTypeDict.Add(CubeType.Wall15, "Wall15");
        cubeTypeDict.Add(CubeType.Wall16, "Wall16");
        cubeTypeDict.Add(CubeType.Wall17, "Wall17");
        cubeTypeDict.Add(CubeType.Wall18, "Wall18");
        cubeTypeDict.Add(CubeType.Wall19, "Wall19");
        cubeTypeDict.Add(CubeType.Wall20, "Wall20");
        cubeTypeDict.Add(CubeType.Wall21, "Wall21");
        cubeTypeDict.Add(CubeType.Wall22, "Wall22");
        cubeTypeDict.Add(CubeType.Wall23, "Wall23");
        cubeTypeDict.Add(CubeType.Wall24, "Wall24");
        cubeTypeDict.Add(CubeType.Wall25, "Wall25");
        cubeTypeDict.Add(CubeType.Wall26, "Wall26");
        cubeTypeDict.Add(CubeType.Wall27, "Wall27");
        cubeTypeDict.Add(CubeType.Wall28, "Wall28");
        cubeTypeDict.Add(CubeType.Wall29, "Wall29");
    }

推荐答案

是的,你可以通过,

Image img;

Debug.Log("Image Name: " + img.sprite.name);

此外,您还可以通过提供 Texture2D

Additionally you can change sprite as well by giving Texture2D

img.sprite = Sprite.Create (spr.texture, img.sprite.rect, new Vector2 (0.5f, 0.5f));

这里spr是一个精灵,你可以直接使用Texture2D.

Here spr is a Sprite, you can use Texture2D directly.

这篇关于如何使用 Unity 中的代码获取/更改图像源名称?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆