[Android]メモリリークを起こさずにサイズの大きな画像をロードする方法(Glideの使い方)

このページには広告が含まれる場合があります。

 

ImageView#setImageResourceメソッドを使って、サイズの大きな画像を表示させようとすると、メモリリークを起こしてアプリが落ちてしまいますが、「Glide」という画像ロードフレームワーク(ライブラリ)を使うと、それをよしなになってくれるという話です。

【参考】Glide
https://bumptech.github.io/glide/

使い方は非常に簡単で、

1.アプリレベルのbuild.gradleに依存関係を追加

compile 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'

dependenciesの箇所に追加してください。

2.画像をロードしてImageView(ロードした画像を表示させたいビュー)に表示させるコードを追加

Glide.with(this).load(R.drawable.keihan_densha).into(imageView)

この場合は、

  • Activityに(withメソッドの引数)、
  • drawableフォルダで入れた画像(loadメソッドの引数)を、
  • ImageView(intoメソッドの引数)に

表示させています。

withメソッドの引数はFragmentでもいけますし、ロードする画像はアプリの外の共有ファイルや外部サーバー、ネット経由での取得も可能なので、超便利です。

(詳しくは下の動画で解説していますので、よろしければご覧ください)

こんな記事も読まれています

人気No.1

前向きな気持ちになれる 占星術・タロットリーディング

あすコロ式・相談サロン 【ナビるやん】

人に言えない悩みから使命・運勢診断まで、あなたに寄り添いながら“ナビゲート”する、あすコロ人気No.1のオンライン相談サロン。占星術・心理学・タロットの叡智を活かし、普段認識していない「潜在意識」にアクセスしてあなたの気づいていない可能性を拓かせ、明日から前向きに歩めるようになる60分のリーディングセッション。

今すぐ詳細を見る(メルマガ登録で初回半額) ▶

TOP