使用 UnityWebRequest加载网络图片并赋值给Image

 public void GetBookSprite(string url, Transform transform)
    {
    
    
        StartCoroutine(DownSprite(url, transform));
    }

    IEnumerator DownSprite(string url, Transform transform)
    {
    
    
        using (UnityWebRequest request = new UnityWebRequest(url))
        {
    
    
            //下载图像作为纹理使用
            DownloadHandlerTexture texDl = new DownloadHandlerTexture(true);
            request.downloadHandler = texDl;
            yield return request.SendWebRequest();
            if (request.isHttpError || request.isNetworkError)
            {
    
    
                Debug.LogError(request.error);
            }
            else
            {
    
    
                int width = 218;
                int high = 300;
                Texture2D tex = new Texture2D(width, high);
                tex = texDl.texture;
                Sprite sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), new Vector2(0.5f, 0.5f));
                ;
                transform.GetComponent<Image>().sprite = sprite;
            }
        }
    }

猜你喜欢

转载自blog.csdn.net/o_ojjj/article/details/120333332