-
카테고리
-
세부 분야
모바일 앱 개발
-
해결 여부
미해결
'나와 매칭이 되었는가에 대한 로직' 질문
22.01.14 20:30 작성 조회수 147
0
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
다름이 아니라, '유저 리스트뷰 클릭 시, 매칭된 회원인지 확인하기 로직 수정' 2분짜리 영상에서 2분 18초 에
for (dataModel in dataSnapshot.children){
if(likeUserKey.equals(uid)){
Toast.
} else {
Toast.
}
}
이 로직을
var check = false;
for (data in snapshot.children) {
val likeUid = data.key.toString()
if (likeUid == FirebaseAuthUtils.getUid()) {
Toast.makeText(baseContext, "나와 매칭된 회원입니당 !!", Toast.LENGTH_SHORT)
.show()
check = true;
break;
}
}
if (!check) {
Toast.makeText(baseContext, "나와 매칭된 회원이 아닙니다 ㅠㅠ", Toast.LENGTH_SHORT)
.show()
likeToken.setBackgroundColor(Color.RED)
}
이와 같이 바꿔야 되지 않는가해서 질문드립니당
답변을 작성해보세요.
0
개복치개발자
지식공유자2022.01.14
안녕하세요?
저의 의도를 한번 설명드리면, 유저들의 정보를 불러오는데
불러오는 유저들의 정보들 중 불러오는 유저(유저1, 유저2, 유저3)과 같은 사람들의 정보 중에
이 사람들이 좋아요를 누른 사람 중에 나의 uid가 있는가를 기준으로 매칭을 했습니다.
위의 올려주신 코드가 잘 이해가 가지 않는데, 한번 설명해주시면 제 코드와 비교해보겠습니다 :)
사실 어떻게든 동작하기만 하면 되기 때문에, 크게 신경쓰지 않고 편하신 대로 하셔도 무관합니다.
ggp03016
질문자2022.01.15
아 네 맞습니다. 이후의 동작과는 무관하지만
Toast Message가 올바르게 동작하지 않아서 헷갈리실 수 있을까 해서 혹시나해서요 !
의도 하신대로 '좋아요 누른 사람들 중에 나의 uid가 있는가' 를 조회하는 것 같은데요.
한번의 선형 탐색(for문)으로 나의 uid를 찾았다면 함께 토스트 메시지가 나가는 것은 맞는데요 탐색이 종료되진 않습니다. 그 이후든 이전이든 계속 탐색을하면서 나의 uid가 아닌경우(else)를 계속 마주치면서 못찾았다는 ToastMessage를 보내는 로직이여서 문의드렸습니다 !
개복치개발자
지식공유자2022.01.15
앗 넵 지적해주신 사항이 맞습니다.
한번만 못 찾았다라고 변경해주셔도 상관없습니다. :)
실제 사용화 서비스가 아니기 때문에, 디테일하게 로직을 작성하지 못한 부분이 있는데, 이 부분에서는 ggp님께서 편하신 대로 강의를 참고해서 로직을 변경해주셔도 됩니다~
수강해주셔서 감사합니다~
답변 1