Java 对于大型图像资源,GridView加载速度较慢

Java 对于大型图像资源,GridView加载速度较慢,java,android,gridview,performance,Java,Android,Gridview,Performance,我学习android编程已经有几天了。我正在创建一个电子书应用程序,它可以从drawable文件夹中读取图像。我已经成功实现了pageviewer活动,该活动在后台使用asyncTask加载位图,并显示文本“加载…”,直到加载完成 我想使用gridview在另一个活动中显示一个页面列表,以便用户可以滚动页面网格并选择任意页面。我学习了android gridview教程,没什么问题。但由于我在drawable中有大约50个图像,而且似乎gridview适配器在所有图像交叉放置在网格中后显示网格。

我学习android编程已经有几天了。我正在创建一个电子书应用程序,它可以从drawable文件夹中读取图像。我已经成功实现了pageviewer活动,该活动在后台使用asyncTask加载位图,并显示文本“加载…”,直到加载完成

我想使用gridview在另一个活动中显示一个页面列表,以便用户可以滚动页面网格并选择任意页面。我学习了android gridview教程,没什么问题。但由于我在drawable中有大约50个图像,而且似乎gridview适配器在所有图像交叉放置在网格中后显示网格。显示网格需要很多时间,而且滚动速度很慢


我想知道是否有更好的方式异步显示网格,比如显示第一项,然后显示第二项等等,而不是等待很长时间并显示网格。我看到了一些主题,比如懒负载,这似乎和我想要的相似,但它们都显示了来自web的图像,这让人困惑。希望我能得到一些建议,或者如果有其他方法。

您显示的图像可能太大了,无法与当前格式的GridView一起使用

我想您需要GridView来显示缩略图,因此一种可能的方法是存储每个页面的缩略图大小的副本,并在网格中使用这些副本


您还可以尝试在清单中打开硬件加速,这可能有助于在图像足够小以更快加载图像时进行滚动。但是afaik硬件加速仅在3.0及以上版本中可用。

您试用过Fedor的Image Lazy Loader吗

以下是链接:

我知道您希望为GridView实现它,但仍然可以引用示例代码中给出的ImageLoader

更新:
你甚至可以试试这个例子。我还没有试过,但当我找到它时,我认为它可能会对您有所帮助。

我也在想同样的事情:)但我认为它不会给客户留下太多印象。如果我找不到别的办法,我就这么做。谢谢你的快速回复。救了我的命,我一直在拼命工作来提高性能——我的应用程序就是这样飞起来的!谢谢我看过这个话题。一旦我读到更多关于hashmap和softreference的内容,我会尝试一下。我不熟悉android和java,我想我是在寻找一个简单的出路。不管怎样,谢谢你,我会把这个话题加入书签。谢谢,这就是我要找的。