일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 재사용
- 안드로이드스튜디오
- espresso
- viewholder
- Fragment 수동 추가
- 리사이클러뷰
- 뷰변경 감지
- LayoutManger
- Android
- 생명주기
- 구분선
- 테마 아이콘
- IntentTestRule
- 안드로이드
- adapter
- binding adapter
- 스와이프
- searchview
- 안드로이드개발레벨업교과서
- ActivityTestRule
- Fragment에서 Activity의 함수 사용하기
- 고차함수
- Error:Execution failed for task ':app:mergeDebugResources'
- 코틀린
- fragment
- 안드로이드13
- ui test
- high order function
- 코딜리티
- recyclerview
Archives
- Today
- Total
룬아님의 취중코딩
리사이클러뷰 변화를 감지하는 registerAdapterDataObserver 본문
https://developer.android.com/reference/android/support/v7/widget/RecyclerView.AdapterDataObserver
리사이클러뷰의 데이터가 변했거나 추가되었을 때 어떤 행위를 해야 하는 경우가 있다.
adapter.registerAdapterDataObserver(new DataSetObserver() {
@Override
public void onChanged() {
super.onChanged();
}
});
그때 아답터에 DataSetObserver를 이용하여 변화를 감지할 수 있다.
다만 사용 결과 onChanged는 notifyDataSetChanged를 마친 이후에 호출되는 것이 아니기 때문에 리스트 아이템의 포지션이 아니라 layoutManager.getChildAt(positon) 등을 사용하면 다른 결과값을 얻을 수 있기 때문에 주의하여야 한다.
반응형
'개발 > 안드로이드 개발' 카테고리의 다른 글
라이브러리 추가 이후 빌드가 안 끝나는 문제 (0) | 2019.09.11 |
---|---|
Found data binding errors. (데이터 바인딩 에러를 찾아보자) (0) | 2019.09.06 |
getQueryParameter를 사용하면 encode url은 어떻게 될까? (0) | 2019.09.05 |
androidx.test.espresso.intent.Intents.internalIntended(org.hamcrest.Matcher, androidx.test.espresso.intent.VerificationMode, java.util.List)' on a null object reference (0) | 2019.08.28 |
coordinatorlayout 툴바 flag (0) | 2019.08.27 |
Comments