Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- alarmanager
- Android
- Job
- 빈
- PHP
- 검사
- jobdispatcher
- Library
- livedatam
- epmty
- schedule
- jobschduler
- workmanager
- shceduler
- firebase
- Service
- Background
Archives
- Today
- Total
에몽이
글라이드 사용법 본문
Glide는 3rd party 라이브러리로, 이미지 로딩을 아주 쉽고 간편하게 해주는 라이브러리다.
https://github.com/bumptech/glide <- 자세한내용은 여길 참조하기 바람
원래 Volley를 사용하여 로딩했었으나, Glide를 사용한 이후로 Volley를 쳐다보지도 않는다.
준비는 Gradle파일에
compile 'com.github.bumptech.glide:glide:3.7.0'
을 추가시켜주면 끝
버젼에 따라 다르긴하지만 2016. 06. 11시점으로 최신버전은 3.7.0이다.
사용방법은
-코드
1 | Glide.with( this ).load(이미지경로).into(imageView명); |
거짓말같지만 이게 다이다.
객체 선언자체가 필요가 없다.
결과는 아래와 같다.
-결과
또한 Glide를 지원하는 라이브러리가 있는데 Glide로 로딩한 이미지를 이쁘게 만들어준다.
이를 사용하기 위해 Gradle에 다음 라이브러리를 추가하도록 한다.
compile 'jp.wasabeef:glide-transformations:1.0.6@aar'
백문이불여일견이라 했으니 아래 예제를 보도록하자.
-코드
1 | Glide.with( this ).load(이미지경로).bitmapTransform( new CropCircleTransformation( new CustomBitmapPool())).into(ImageView명); |
-결과
코드를 보면 new CropCircleTransformation(new CustomBitmapPool()) 이렇게 BitmapPool을 생성해주는걸 볼 수 있는데, 이는 이 라이브러리를 사용하기 위한 인자로 클래스를 생성하여 넣어주기 위함이다.
위 클래스는 빈클래스이므로 아래와 같이 생성하면된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | public class CustomBitmapPool implements BitmapPool { @Override public int getMaxSize() { return 0 ; } @Override public void setSizeMultiplier( float sizeMultiplier) { } @Override public boolean put(Bitmap bitmap) { return false ; } @Override public Bitmap get( int width, int height, Bitmap.Config config) { return null ; } @Override public Bitmap getDirty( int width, int height, Bitmap.Config config) { return null ; } @Override public void clearMemory() { } @Override public void trimMemory( int level) { } } |
Override한 함수들을 잘 안다면 수정해도 좋으나, 모르면 그냥 기본상태로 놔두고 사용하도록 한다.
하지만 간편한 이면에 단점이 존재한다. Glide라이브러리는 자동으로 캐싱을 하기 때문에 이미지 새로고침이 실시간으로 일어나지 않는다는점이다.
따라서 이를 수동으로 새로고침 하려면
1 2 3 | Glide.with(mActivity).load(이미지경로) .signature( new StringSignature(String.valueOf(System.currentTimeMillis()))) .into(이미지뷰); |
이렇게 사용하면된다!
음... 끝
출처: http://galmaegi74.tistory.com/2 [galmaegi]
'android' 카테고리의 다른 글
서비스 예제 (0) | 2017.01.15 |
---|---|
글라이드 bitmap으로 저장 (0) | 2017.01.15 |
서비스가 실행중인지 확인하는 메소드 (0) | 2017.01.15 |
httpconnect 옵션들 (0) | 2017.01.12 |
라이브러리 (0) | 2017.01.12 |
Comments