Xamarin Visual Studio:带有URL图像的GridView

凯文·F

我正在使用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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章