Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- onViewCreated
- java.lang.OutOfMemoryError: Java heap space
- 안드로이드
- List
- 특가알람
- 뷰 상태 저장
- android clean architecture
- 특가게시판
- Android
- RX
- 대학톡
- moveToState
- 올인원타이머
- 카드내역 공유
- compileKotlin FAILED
- 특가촌
- 타이머앱
- 작성
- 카드 내역 공유 앱
- nvidia-docker
- todofication
- 뷰 상태복구
- kotlin
- Koin
- fragment
- RxJava
- recyclerview
- Quickly
- 안드로이드 클린 아키텍쳐
- andorid
Archives
- Today
- Total
seoft
LiveDataUtil : LiveData 리스트 형식 관리 본문
사이드 프로젝트 개발 도중에 sealed 클래스를 상속받은 클래스들을 라이브데이터 형식으로 관리하고 합쳐서 리사이클러뷰 아답터에 넘겨주는 형식으로 개발하였는다.
liveData의 널체크와 리스트 합치는 과정에서 다음과 같은 코드가 구현됬었다.
위의 코드에서 두가지 사항이 불편했는데
- 라이브데이터 단일형식(LIveData<ABC>과 리스트형식(LiveData<List<ABC>>)의 통합관리
- 불필요한 공통된 value의 널체크
두 사항을 보완하고자 유틸성 클래스를 하나 구현하였다.
해당 유틸성 클래스를 사용하면
- 라이브데이터의 단일형식과 리스트 형식을 따로 처리하지않고 유틸성 함수 내에서 타입에 맞춰 리스트화(혼합가능)
- liveData.value가 null일 경우 리스트에서 제외
위의 코드와 비교했을때 LiveDataUtil를 사용했을때 간결한 결과를 볼 수 있다
'android' 카테고리의 다른 글
[Android, Glide] url로 부터 image file 저장하기 (0) | 2020.06.26 |
---|---|
[kotlin/android] 리플랙션을 사용해 KClass로 인스터스 생성하기 (0) | 2020.06.18 |
[java, kotlin] 상속관계 리스트 json타입, 객체타입 전환 (with gson) (0) | 2020.05.16 |
Retrofit으로 Body 비어있는 Response 받기 (0) | 2020.04.23 |
list의 아이템 중 set의 아이템이 1개이상 포함되는지 여부 체크(kotlin) (0) | 2020.04.07 |
Comments