[Android] Glide

강승구·2022년 12월 23일
0

Glide는 안드로이드에서 이미지를 빠르고 효율적으로 불러올 수 있게 도와주는 라이브러리이다.

ImageView로 이미지 리소스를 넣을때 src로 바로 넣을 수 있지만, 사이즈가 큰 이미지의 경우 OOM을 발생시키기도 해서 Glide를 사용하는 것이 좋다. Glide를 사용하면 이미지가 타일형식으로 로드되어 로드 도중 OOM 문제가 발생되지 않는다.

또한 이미지 로딩 속도가 빠른 장점도 있고 drawable의 이미지 리소스 뿐만 아니라, url의 이미지를 가져오거나 GIF 같은 움직이는 이미지도 넣을 수 있고 여러가지 기능도 있어 유용한 라이브러리이다.


사용법

1. gradle에 dependencies 추가

dependencies {
    implementation 'com.github.bumptech.glide:glide:4.10.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.10.0'
}

2. Kotlin 코드 추가

val imageView: ImageView = findViewById(R.id.imageView)

Glide.with(context)
    .load("이미지 url")
    .into(imageView)

옵션

1. override()

override 메서드로 이미지 사이즈를 조절해줄 수 있다. 사이즈를 조절하며 이미지 로딩 속도를 최적화할 수 있다. 메모리를 절약하고 싶을 때 유용하게 사용된다.

Glide.with(this)
    .load("이미지 url")
    .override(100, 100)
    .into(imageView)

2. placeholder()

이미지가 로딩하는 동안 보일 이미지를 정해준다. resourceId나 drawable이 들어간다.

Glide.with(this)
    .load("이미지 url")
    .placeholder(R.drawable.loading)
    .into(imageView)

3. error()

이미지 로딩에 실패했을 경우 실패 이미지를 지정해줄 수 있다.

Glide.with(this)
    .load("이미지 url")
    .error(R.drawable.error)
    .into(imageView)

4. asGif()

gif 이미지도 로딩할 수 있다.

Glide.with(this)
    .asGif()
    .load("gif 이미지 url")
    .into(imageView)

5. thumbnail()

원본 이미지를 썸네일로 사용한다. 지정한 % 비율만큼 미리 이미지를 가져와서 보여준다. 0.1f로 지정했다면 실제 이미지 크기 중 10%만 먼저 가져와서 흐릿하게 보여준다.

Glide.with(this)
    .load("이미지 url")
    .thumbnail(0.1f)
    .into(imageView)
profile
강승구

0개의 댓글