2014-06-23 1 views

답변

0

이지도가 iOS와 1 대 1로 매핑되는지 잘 모르겠습니다.하지만 Android MonoGame에서 어떻게했는지는 확실하지 않습니다. 이 코드의 대부분은 Stack의 다른 게시물에서 왔지만 불행히도이 게시물을 기억할 수는 없습니다!

/// <summary> 
/// Downloads a texture based on a URL path, and stores it in this sprites texture. 
/// </summary> 
/// <param name="URL">The path to the file.</param> 
private void DownloadTexture(String URL) 
{ 
    HttpWebRequest request = HttpWebRequest.Create(new Uri(URL)) as HttpWebRequest; 

    request.BeginGetResponse((ar) => 
    { 
     HttpWebResponse response = request.EndGetResponse(ar) as HttpWebResponse; 
     using (Stream stream = response.GetResponseStream()) 
     { 
      using (MemoryStream ms = new MemoryStream()) 
      { 
       int count = 0; 
       do 
       { 
        byte[] buf = new byte[1024]; 
        count = stream.Read(buf, 0, 1024); 
        ms.Write(buf, 0, count); 
       } while (stream.CanRead && count > 0); 

       ms.Seek(0, SeekOrigin.Begin); 

       /*Texture2D*/ mTexture = Texture2D.FromStream(GameObjectManager.pInstance.pGraphicsDevice, ms); //.PreMultiplyAlpha(); 
      } 
     } 
    }, null); 
}