일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- kotlin collection
- build with ai
- AWS EC2
- exoplayer cache
- list map
- DiffUtil.ItemCallback
- ChatGPT
- Python
- FastAPI
- android ktor
- kotlin list
- ExoPlayer
- 독서
- 안드로이드
- 시행착오
- map
- android custom view
- 유튜브
- getChangePayload
- ktor api call
- android exoplayer
- 스피너
- android
- ListAdapter DiffUtil
- ListAdapter
- ktor client
- doc2vec
- llm
- Zsh
- video caching
- Today
- Total
목록getChangePayload (2)
버튼 수집상
지난 글 링크 [안드로이드] ListAdapter DiffUtil 제대로 쓰기 - 3 지난 글에서 ListAdapter DiffUtil 의 getChangePayload 활용법에 대해 적었다. [안드로이드] ListAdapter DiffUtil 제대로 쓰기 - 2 1편에서 ListAdapter에 submitList를 하면서 기존 리스트를 업데이트할 때 리스트 깊은 collectingbuttons.tistory.com 지난 글에 이어서 DiffUtil.ItemCallback의 getChangePayload 함수를 이용해서 expand - collapse 되는 리스트 UI를 만들어보겠다. UI 구조 상위 카테고리 ▲ |_ 하위 카테고리 |_ 하위 카테고리 상위 카테고리 ▼ 상위 카테고리 ▼ 상위 카테고리 ▼..
1편에서 ListAdapter에 submitList를 하면서 기존 리스트를 업데이트할 때 리스트 깊은 복사deep copy를 해야 하는 이유에 대해 적었다. 이번엔 ListAdapter DiffUtil의 각 함수를 자세히 알아보겠다. 샘플 코드 전체는 1편에 있다. DiffUtil.ItemCallback 에 구현해야하는 함수 2가지가 있다. areContentsTheSame : 리스트 요소의 객체 주소를 비교한다 areItemsTheSame : 리스트 요소의 필드값을 비교한다 함수 이름만 보면 하는 일이 반대가 돼야할 것 같은데 아무튼 그렇다. areItemsTheSame에서 변경사항을 감지하고 싶은 값을 비교해서 UI를 업데이트할 수 있다. 예제 데이터 SimpleObject의 isChecked 값을 ..