我有一个 IEnumerator 函数,可以从服务器下载图像,在未附加到预制件的脚本上,它可以工作,但在附加到预制件的脚本上,它不起作用。
通过不起作用我想说 www.SendWebRequest() 永远不会返回,我已经等了将近 10 分钟并且它没有返回,图像大约有 200kb,所以问题不在于图像大小。
我已经检查了 url 是否正确,尝试更改图像,尝试重新编写函数但没有任何效果,这是我的函数:
public void Set(string NomeIcone, string NomeAnalise, string idzinho, string descricaozinha, string NomeCapa)
{
Name.text = NomeAnalise;
ID = idzinho;
Descricao = descricaozinha;
Capa = NomeCapa;
StartCoroutine(LoadLogo(NomeIcone));
}
public IEnumerator LoadLogo(string nomeArquivo)
{
string url = PathIcone + nomeArquivo;
print(url);
using (UnityWebRequest www = UnityWebRequestTexture.GetTexture(url))
{
yield return www.SendWebRequest();
if (www.error == null)
{
Texture2D tex = new Texture2D(1, 1);
tex = DownloadHandlerTexture.GetContent(www);
Icon.texture = tex;
RawImage Foto = Icon.GetComponentInChildren<RawImage>();
Foto.SetNativeSize();
float altura = 100 * Foto.rectTransform.rect.height / Foto.rectTransform.rect.width;
Foto.rectTransform.sizeDelta = new Vector2(100, altura);
}
}
}
如您所见,我的“IconeSimbolo”是附加该脚本的预制件中的 RawImage
我希望我的“IconeSimbolo”纹理更改为服务器上的图像,但它永远不会改变。
我在另一个脚本上有相同的代码,在检查器上具有相同的设置,在另一个预制件上一切正常,但在这个它没有