0

我使用在 imageview 中加载图像

 try {
                Bitmap bitmap = BitmapFactory.decodeStream((InputStream)new java.net.URL(SplashItems.get(position).get("imageUrl")).getContent());
                 ImageViewObject.setImageBitmap(bitmap); 

            } catch (MalformedURLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

但它是如此缓慢,任何更快的方法来做到这一点

此致

4

2 回答 2

2

我建议使用AsyncTask加载。这样您的应用程序仍然可以运行,并且用户可以在图像加载时进行交互。我还发现它可以大大减少下载时间,因为下载是在后台线程上完成的,并且能够专注于此。以下是帮助您入门的链接:

http://developer.android.com/reference/android/os/AsyncTask.html

本文还讨论了处理程序,它也可能对您有所帮助。

http://www.vogella.com/articles/AndroidPerformance/article.html

祝你好运!

于 2012-07-13T00:35:10.153 回答
1

您可以查看示例中的类ImageDownloaderGoogleTV。他们使用 asynctask 在后台下载图像并实现缓存以提高性能。Android 开发者博客Multithreading For Performance的另一个教程

以及关于 SO 的类似问题:Loading an image from the Web with Asynctask。最后一个是UrlImageViewHelper。您可以检查性能并选择最佳的。我自己经常用ImageDownloader

于 2012-07-13T01:00:12.060 回答