2017-06-24 3 views
0

ビュー内の同じ場所に同じイメージが表示されるとします。この状況で画像をダウンロードするための最良の戦略は何ですか?アンドロイドクライアントで同じリモートイメージに対して複数のWebリクエストを送信するとどうなるでしょうか?

  1. 私はただ一つの画像をダウンロードして、私はちょうど同じURLにすべてImageViewsのSRCを設定し、それを処理するために、Androidのシステムを残す必要があるキャッシュとして、あるいは
  2. それを保存する必要がありますか?または
  3. もっと良い方法を提案していただけたら幸いですか?

答えて

0

このような場合にはGlide libraryを使用することをおすすめします。私は図書館を「促進する」ことは望まない。しかし、グライドはAndroid開発環境の確立されたライブラリです。多くの多くのAndroid開発者(および大企業)がこれを使用しています。なんでも。 Glideはキャッシュにビルドをもたらします。あなたはそれをカスタマイズすることができます。 Glideでのキャッシュの詳細については、hereを参照してください。

"画像をダウンロードしてそれをImageViewに表示する"のためのライブラリを使用することは、 "過度に"と思うかもしれません。しかし、あなたは/RecyclerViewImageViewの画像をダウンロードして表示したことがありますか? 私を信頼してください。手動で行うのは苦痛です。グライドもそういうことであなたを助けます。ここで

指定されたURLからイメージをダウンロードしてImageViewにそれを置くために(そのReadmeから盗まれた)単純な例です:

@Override public void onCreate(Bundle savedInstanceState) { 
    ... 
    ImageView imageView = (ImageView) findViewById(R.id.my_image_view); 

    GlideApp.with(this).load("http://i.imgur.com/qFeBmOF.png").into(imageView); 
} 
関連する問題