我正在寻找一种设计模式,我可以使用,以便在Android的recyclerView我可以在低质量的快速加载图像,然后也使为高质量图像的通话将将就 写在低质量的图像之后。我经常看到它首先加载低质量图像,然后出现高质量图像。如何在安卓(就像WhatsApp的个人资料图片)之后加载低质量再高品质的图像
这是怎么回事在适配器回收站视图来完成。现在我正在使用毕加索缓存和图像加载。因此,例如,这里是一个低质量的图像链接:
http://example.com/lowQuality.jpg和同样高品质所以在我的适配器为recyclerView http://example.com/highQuality.jpg
如果我这样做的viewholder:
public class SearchItemHolder extends RecyclerView.ViewHolder {
@BindView(R.id.iv)
ImageView iv;
@BindView(R.id.tv_description)
TextView tv_description;
public SearchItemHolder(View view) {
super(view);
ButterKnife.bind(this, view);
}
public void bindSearch(final SearchModel searchModel) {
String description = searchModel.getProductName();
final String imageLowQualityIDUrl = searchModel.getIdLowQualityImage();
final String imageHighQualityIDUrl = searchModel.getIdHighQualityImage();
tv_price.setText(price);
tv_description.setText(description);
Picasso.with(mContext).load(imageLowQualityIDUrl).into(iv);
//but how to switch it to high quality URL after its finished loading ?
}
}
所以要清楚,我希望只要高品质图像尚未加载,低质量图像就能显示出来。
更新:我真正想要的是应用程序,影响我看到那里的低画质图像快速加载,然后在几秒钟后它转变到一个更高的质量。如果还有其他工具或方法可以让我知道。我想作为WhatsApp的轮廓图像(如何从质量差以优良的品质淡入)相同的效果。
您的意思是说有两个版本的图像,低质量和高质量,那么你想先加载低质量,然后再加载高质量? –
为什么不尝试先加载高质量,然后调整为低质量。如果你使用这种设计模式,假设你分别载入45kb和90kb两个图像,如果你加载一次,调整大小为90kb的数据,如果你加载两个135kb的图像两倍。 –
我真正想要的是,我看到的应用程序中,低质量图像加载很快,然后几秒钟后,它转变为更高的质量 – j2emanue