[Android] 파이어스토어 - 사진 업로드 4

728x90
반응형

* 저번시간에 DB에 올리기만 한 사진들을 이번에 불러오는 기능을 추가해보겠다.

 

1. layout xml생성

 - 사진을 띄우려 하는 페이지 layout을 각자 만들어준다.

 

2. Adapter 만들기

 - DetailViewFragment로 이동해서 화면에 사진들을 ListView로 띄어줄 Adapter를 만들어줘야 한다.

 - 레이아웃을 뷰 홀더로 선언해주고 Adapter도 만들어준다.

 - 기본적으로 Adapter를 만든 뒤 빨간 밑줄에서 alt+ Enter키나 Option + '+'키(맥북)를 누르면 자동으로

    implement members가 뜨면서 내부 함수들이 추가된다.

 

3. 바인딩 설정

 - binding 설정과 onCreateView에 연동시켜준다.

 

4. DB연동

 - DetailViewFragment에 firebase, firestore를 연동한다. 앞서 images라는 폴더안에 사진들을 저장했기 때문에

    firestore.collection("images")로 불러와준다.

 

5. SnapshotListener 달아주기

 - 사진들을 넣어줄 변수인 contentModels를 만들고 firestore.collection에 addSnapshotListener를 달아준다.

 - 아래에 getItemCount()도 contentModels.size만큼 설정해준다.

 

6.  중간실행

 - 현재 사진을 하나만 올렸기 때문에 사진이 하나만 올라와있다. 이제 이 사진들을 하나하나 binding 해줘야한다.

 

7. onBindViewHolder 추가

 - 아래와 같이 글 올린 유저 이메일, 사진 설명, 좋아요 수, 컨텐츠 이미지를 추가하기위해 binding을 해준다.

 - 컨텐츠 이미지(올린 사진)은 holder대신 Glide를 사용하여 올리겠다.

 

8. Glide 사용

 - build.gradle에 implementation해준다.

 - onBindViewHolder에 아래와 같이 추가해준다. (contentModel.imageUrl을 binding.contentImageView에 넣어준다는 뜻인 것 같다)

 

9. 실행결과

 - 정상적으로 사진과 글쓴이, 사진설명, 좋아요 수가 뜨는 것을 볼 수 있다.

728x90
반응형
TAGS.

Comments