我正在使用Visual Studio和Xamarin插件(Xamarin.Forms)开发便携式应用程序。
我正在尝试使用url中的图像创建一个gridview,下面是GridView的示例:
我尝试在ImageAdapter上替换,这是以下几行:
http://developer.xamarin.com/recipes/android/layout/grid_view/create_a_grid_view/
这个示例与/ resources / drawables上的图像完美配合,但是我需要从url下载图像。
imageView.SetImageResource(thumbIds[position]);
和
Android.Net.Uri url = Android.Net.Uri.Parse("http://xamarin.com/resources/design/home/devices.png");
imageView.SetImageURI(url);
但是不行
请帮我。
问题是SetImageURI
只能与特定于Android操作系统的URI一起使用。当您提供imageView
互联网网址时,它将尝试使用您提供的地址在本地查找手机上的图像,因此会出现“无此文件或目录”错误。
您需要下载图像,然后使用转换为Android Bitmap BitmapFactory
。然后,您可以imageView.SetImageBitmap
用来设置图像。
private Bitmap GetBitmapFromUrl(string url)
{
using(WebClient webClient = new WebClient())
{
byte[] bytes = webClient.DownloadData(url);
if(bytes != null && bytes.Length > 0)
{
return BitmapFactory.DecodeByteArray(bytes, 0, bytes.Length);
}
}
return null;
}
将图像应用于imageView
Bitmap bitmap = GetBitmapFromUrl("http://xamarin.com/resources/design/home/devices.png");
imageView.SetImageBitmap(bitmap);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句