我正在使用毕加索在我的回收站视图中加载图片,但加载图片需要花费很多时间。这是我用毕加索加载图片的号召。
Picasso.with(hostActivity).load("ImageUrl").fit().centerCrop().into(holder.ImageView);
如果我使用asynctask任务做同样的事情,图像会立即加载。
我做错了吗?
感谢。
答案 0 :(得分:2)
fit()
需要等待ImageView
的大小才能确定图片大小才能匹配,并且无法计算大小直到布局通过结束。如果您能够预测合理的宽度和高度值,则可以使用resize()
获得更快的结果。
您可能还想查看Glide库,因为它采用了一种不同的缓存方法,在某些情况下比Picasso更快,例如,不是缓存全尺寸图像,而是缓存已调整大小的图像。但是,两个图书馆都有许多利弊;虽然语法非常相似,但毕加索的某些功能在Glide中不起作用,反之亦然。