Android

[Android] 9주차 스터디 (Glide)

poppy 2021. 1. 7. 14:50
반응형
Glide(글라이드)란?
- 이미지 로딩 라이브러리
- Google에서 개발해서 밀고있던 volley이후에 2014년에 공개된 라이브러리입니다.
- Bump앱을 구글이 인수하면서 bump앱에서 사용하던 이미지 라이브러리를 공개한것이 이 Glide입니다.
- 기존의 Picasso에서 사용하는 함수 방식과 거의 비슷합니다.
- 다른 이미지 로딩라이브러리에는 없는 썸네일보기, GIF로딩, 동영상 스틸 보기 기능까지 지원합니다.

1. Glide 라이브러리 추가 - build.gradle

implementation 'com.github.bumptech.glide:glide:4.10.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.10.0'

2. 권한 추가 - AndroidManifest.xml

외부에서 이미지를 가져올 것이므로 네트워크 권한을 추가했습니다. 

<uses-permission android:name="android.permission.INTERNET"/>

3. 뷰 만들기 - activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:id="@+id/iv_glide"
        android:layout_width="300dp"
        android:layout_height="300dp"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        tools:srcCompat="@tools:sample/avatars" />
    
</RelativeLayout>

4. 이미지 불러오기 - MainActivity.java

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ImageView ivGlide = (ImageView)findViewById(R.id.iv_glide);

        Glide.with(this).load("https://bit.ly/3s72Ndd").into(ivGlide);
    }
}

- with: 어느 액티비티를 참조할건지, 보통 this로 가져오면 됨, Context를 의미함
- Load: 이미지를 받아올 경로 (외부에서 이미지를 호출해서 받아올 때는 네트워크 권한을 줘야함)
- into: 받아온 이미지를 어디에 넣어줄건지

 

결과 화면입니다.

반응형