inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

1:1채팅 만들기(Android + Kotlin + Firebase)

메세지 주고받기 (리얼타임)

메세지 출력에 대해 질문입니다.

359

harry

작성한 질문수 8

0

덕분에 개인으로 진행하는 프로젝트에 채팅 기능을 추가하여 잘 만들어 가고 있는데요 한가지 궁금한게 두 사람끼리 채팅을 주고 받고난 후 대화방을 나가고 다시 들어가면 밑에처럼 '나'가 보낸 메세지를 전부 출력한 후 '바보' 가 보낸 메세지가 출력이 되는데 이를 수정하려면 어떤식으로 구현을 해야할까요?

android firebase kotlin

답변 3

0

개복치개발자

넵넵 순서대로 한번 가보겠습니다.

일단 db에는 내가 보낸 메세지와 바보가 보낸 메세지가 둘 다 들어있습니다.

- 내가 보낸거

- 바보 보낸거

- 내가 보낸거

- 바보 보낸거

이런 식으로 있습니다.

그러면 우선적으로 이 데이터를 받아오는 것 부터 합니다.

아래와 같은 부분에서 데이터를 받아왔습니다.

위의 이미지처럼 데이터를 firebase에서 뽑아오는데, 이 것을 가지고 list에 담는 작업을 진행해주시면 됩니다~

0

harry

안녕하세요 ' list = [내가 보낸 메세지 , 바보가 보낸 메세지, 내가 보낸 메세지, 바보가 보낸 메시지 ] ' 이쪽 구현을 어느 시점에서 어떻게 구현해야할 지 잘 감이 안오네요... 저는 onChildedAdded에서 val msg = model?.message.toString() 으로 메세지를 가져오고 이 값을 mutableListOf로 다음과 같이 추가해봤는데 잘 안되네요 혹시 좀 더 자세히 예시를 주실 수 있을까요?

0

개복치개발자

안녕하세요

지금 firebase  database에 아래와 같이 데이터 구조가 되어 있을 겁니다

db

 - 내가 보낸 메세지 

 - 바보가 보낸 메세지

 - 내가 보낸 메세지 

 - 바보가 보낸 메시지

이런식으로 되어 있으면

저 db에 있는 정도를 모두 불러와서 recyclerview에 뿌려줄때 

아래의 애들을 list에 담아서

list = [내가 보낸 메세지 , 바보가 보낸 메세지, 내가 보낸 메세지, 바보가 보낸 메시지 ]

if 내가 보낸 메세지

     대화방 오른쪽에 표시

else 바보가 보낸 메시지

    대화방 왼쪽에 표시

이런 형태로 구현하시면 됩니다.

잘 이해가 되셨는지 모르겠네요... 혹시 어려우시면 또 질문 남겨주세요.

Groupy 라이브러리 지원이 되지 않습니다.

0

172

1

Firebase가 아닌 my sql

0

361

0

4분 3초에서 그룹 어뎁터와 그룹뷰 홀더 빨간색 글씨

0

296

2

7강 RecyclerView 강의에서 질문있습니다.

0

616

3

개복님 말씀대루 다했는데 도중에 앱이 꺼져용

0

412

1

안녕하세요. 말씀하신 import 추가했는데 오류가 또 뜨네요 ㅠ

0

479

2

안녕하세욤 강의 잘보고 있습니다

0

292

2

파이어스토어,리얼타임데이터베이스 uid 관련 질문입니다.

0

311

2

recyclerview_list 이부분이 안뜹니다.

0

276

1

firebase 업데이트 된버전에 코드를 알 수 있을 까요?

0

226

1

Firebase 연동 질문입니다.

0

293

1

auth.createUserWithEmailAndPassword 유저생성이안돼요

0

417

1

개복치님 리사이클러뷰 질문입니다.

0

339

3

recycleview강의에서 4분 12초에 .adapter부분이 빨간색이 떠요.

0

449

3

.adapter부분이 빨간색이 떠요. 어떤게 빠진건가요?

0

218

1

RecyclerView 7분중 GroupieViewHolder 자동입력과 UserItem을 Implement Members하는법을 모르겠어요.

0

407

3

13강 리얼타임 수강중입니다. 말씀대로 LOG.D(TAG,MSG 결과입니다. )

0

526

6

GroupAdapter와 GroupieViewHolder 자동입력이 안떠요.

0

280

1

auth = FirebaseAuth.getInstance를 auth = Firebase.auth로 바꾸면 오류가 떠요.

0

266

0

빨간색 item을 Import하는 법과 GroupViewHolder 자동입력되는 법과 Try it out:2.9.0 다운받는 법좀 알려주세요!

0

259

0

13강 리얼타임 수강중입니다.

0

442

1

ChatListActivity에서 디자인 (or 텍스트) 메뉴가 없어서 리사이클뷰를 키지 못합니다.

0

342

0

이 코드를 어디에 넣는건가요? db.collection(

0

251

0

빨간색 글씨때문에 막혀요. 그리고 Cloud Firestore 초기화 코드가 달라요.

0

944

2