LiveData 관련 질문
630
작성한 질문수 1
메인 화면을 만드는 과정에서 livedata에 대해 궁금한 점이 생겨 질문드립니다.
selected 버튼을 누르면, dbRepository.updateInterestCoinData(interestCoinEntity) 를 통해 db에 있는 데이터가 업데이트 되는 것 까지는 알겠는데, 그 이후 livedata인 뷰모델에 선언된 변수, selectedCoinList가 업데이트 되어서 다시 리사이클러뷰가 업데이트되는 것인가요? 어떻게 리사이클러뷰의 UI가 업데이트 되는 것인지가 헷갈려 질문드립니다.
답변 1
0
안녕하세요 angella님
질문주신 부분에 대해서
그 이후 livedata인 뷰모델에 선언된 변수, selectedCoinList가 업데이트 되어서 다시 리사이클러뷰가 업데이트되는 것인가요? 어떻게 리사이클러뷰의 UI가 업데이트 되는 것인지가 헷갈려 질문드립니다.
혹시 liveData의 동작방식에 대한 문의이실까요?
아니면 flow의 동작방식에 대한 문의이실까요?
코드와 함께 좀 더 자세히 문의주시면 도움드릴 수 있을 것 같습니다 :)
0
관심있는 코인을 누르면 콜백 함수를 통해 viewModel.updateInterestCoinData함수가 실행되고, MainViewModel 에서 dbRepository.updateInterestCoinData(interestCoinEntity) DB가 업데이트가 되는 걸로 이해했습니다. 그 이후 어떻게 recyclerview의 UI가 업데이트 되는지 정확하게 이해가 되지 않아 질문드렸습니다!
0
좋은 질문이시네요.
업데이트를 클릭하면 일어나는 일들을 순서대로 써보겠습니다.
업데이트를 누르면 선언된 viewModel에 update기능 실행
viewModel에서 Room을 호출해서 db업데이트
flow와 room을 같이 쓰고 있기 때문에 변경사항 flow로 반환
flow를 livedata 형태로 사용하여 livedata가 변경사항 감지
livedata가 변경되면서 observe 부분이 실행되어 UI 업데이트
의 순서입니다.
혹시 설명이 부족했거나 어려우신 부분 있으시면 알려주세요~
아래의 링크를 참고하셔도 좋아요~
빌드가 안 돼요..
0
78
2
압축 폴더 파일이 비어있어요ㅠ
0
1203
2
bottom navigation view 색깔
0
112
1
[룸DB 관련 에러] can't open offline database '/data/data/ ...
0
293
3
강의명: 코인 선택화면 Adapater 세팅 (RecyclerView) 에서
0
194
3
6:50분 즈음부터 recycler view 재활용 관련 말이 나오는데
0
170
1
섹션 4 다 완성하고 실행시켜보니 NumberFormatEx이 뜨네요
0
293
2
Notification을 실행했을때
0
824
1
Database Inspector에서 db가 closed 일때
0
430
1
Fragment 에서 다른 Activity로는 Navigation을 사용하지 않나요??
0
256
1
notification 문의드립니다.
0
222
1
풀 소스 코드는 없나요!?
0
319
2
안드로이드버전에 따라 다른것이있을까요?
0
356
2
HTML 코드
0
238
1
BroadcastReceiver가 안됩니다ㅠㅠ
0
510
1
15, 30, 45분 데이터 및 어댑터 오류
0
286
1
_ 사용하시는 이유가 있으실까요?
0
232
1
15, 30, 45 분 데이터가 쌓이지 않습니다.
0
339
1
SQL문 쓰실 때 글자 색깔이 다른데 어떤걸 사용하시는지 알 수 있을까요?
0
221
1
안드로이드13 알림 권한
0
579
1
인트로 화면 세팅에서 질문있습니다.
0
279
1
datastore 관련 질문있습니다.
0
385
1
typeconverter 오류 문의드립니다.
0
392
2
navigation 관련 질문 있습니다
0
330
2





