私が使用できるデザインパターンを探していますので、android recyclerViewで低品質ですばやく画像をロードしてから高画質画像を呼び出すと、後で低画質画像を書き込むことになります。 低画質の画像が最初に読み込まれ、その後に高画質が表示される場所がよく見られます。後でアンドロイドで低品質と高品質の画像を読み込む方法(WhatsAppプロファイル画像のように)
しかし、これはリサイクラビューのアダプタでどのように行われますか。今私はキャッシュと画像の読み込みにピカソを使用しています。私はviewholderでこれを行う場合
http://example.com/lowQuality.jpgとhttp://example.com/highQuality.jpg
だから、recyclerViewのための私のアダプタでも同様に高品質:
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プロファイル画像と同じ効果を望んでいます(品質が悪いから良い品質にフェードインする方法)。
低品質と高品質の2つのバージョンのイメージがあり、次に低品質をロードしてから高品質を後でロードすることを意味しますか? –
まず高品質を読み込み、低品質にサイズ変更してみてください。このデザインパターンを使用する場合は、2つのイメージをそれぞれ45kbと90kbとしましょう.1回読み込むと、135kbの2つのイメージを2回読み込むと90kbのデータがリサイズされます。 –
私が本当に欲しいのは、低品質の画像がすぐに読み込まれ、数秒後に高品質に変換されるアプリで見られるその効果です。 – j2emanue