通过文件夹路径读取图片,图片可以不改成Sprite格式,但是当该文件夹下有大量图片会卡顿
void SelectSata()
{
print(TopText.text.ToString());
switch (TopText.text.ToString())
{
case "猪":
Path = "Assets/AssetsPackage/Texture/Images/猪/猪水平切";
print("猪猪");
LoadImages(Path);
ShowCurrentImage();
break;
case "马":
Path = "Assets/AssetsPackage/Texture/Images/马/马水平切";
LoadImages(Path);
ShowCurrentImage();
break;
case "牛":
Path = "Assets/AssetsPackage/Texture/Images/牛/牛水平切";
LoadImages(Path);
ShowCurrentImage();
break;
case "羊":
Path = "Assets/AssetsPackage/Texture/Images/羊/羊水平切";
LoadImages(Path);
ShowCurrentImage();
break;
case "鸡":
Path = "Assets/AssetsPackage/Texture/Images/鸡/鸡水平切";
LoadImages(Path);
ShowCurrentImage();
break;
case "狗":
Path = "Assets/AssetsPackage/Texture/Images/狗/狗水平切";
LoadImages(Path);
ShowCurrentImage();
break;
case "猫":
Path = "Assets/AssetsPackage/Texture/Images/猫/猫水平切";
LoadImages(Path);
ShowCurrentImage();
break;
case "兔":
Path = "Assets/AssetsPackage/Texture/Images/兔/兔水平切";
LoadImages(Path);
ShowCurrentImage();
break;
default: Debug.LogError("起始字段有误"); break;
}
}
//加载图片并添加到列表中
void LoadImages(string imagepath)
{
string[] files = Directory.GetFiles(imagepath, "*.png");//获取文件
if (files.Length > 0)
{
Sum = files.Length;//获取图片总数
print(Sum);
}
else
{
print("folder does not contain any .png files");
}
print(imagepath);
Sum = files.Length;//获取图片总数
sliderLine.maxValue = Sum - 1;
foreach (string file in files)
{
byte[] data = File.ReadAllBytes(file);//读取文件数据
Texture2D texture = new Texture2D(2, 2);
texture.LoadImage(data);
Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.zero);
// spriteList.Add(sprite);
}
}