잡동사니

반응형

질문

Android Paging 3 라이브러리 를 사용하고 있습니다. 내 테스트 구성에는 pageSize = 10 maxSize = 40 PagingConfig 가 있습니다. 구성된 RecyclerView 를 아래로 스크롤하면 모든 것이 예상대로 작동합니다. 목록의 하한에 가까워지면 데이터의 새로운 부분이로드됩니다. 로드 된 데이터 항목이 너무 많으면 (구성된 maxSize 보다 많음) 삭제되기 시작하며 예상되는 동작입니다. 그러나 위로 스크롤하기 시작하면 이러한 드롭 된 항목에 대한 데이터가없는 빈 뷰 홀더가 있습니다. 즉, PagingData 를 정리해도 어댑터 항목의 수가 변경되지 않습니다. 이러한 삭제 된 항목 ( null 과 동일)을 PagingDataAdapter 에서 제거하려면 어떻게해야합니까? 이에 대한 API가 있습니까? 자동으로 수행되어야하는 경우 Paging 3의 구성이 잘못되었을 수 있습니다. 이 경우 코드를 제공하겠습니다.

 

답변1

PagingConfig.enablePlaceholders 가 설정되어 있습니까?

placeholder를 비활성화하면 Paging이 아직로드되지 않은 페이지에 대해 null 항목으로 목록을 채우는 것을 방지 할 수 있습니다.

PagingConfig.enablePlaceholders 의 기본값은 true 입니다.

편집 : placeholder null 항목으로 표시되기 때문에 위의 주석은 여전히 유지되지만 실제로는 alpha02의 버그였으며 이후 수정되어 alpha03과 함께 사라질 것입니다.



 

 

 

 

출처 : https://stackoverflow.com/questions/62909698/how-to-remove-dropped-items-from-recyclerview-in-android-pager-3

반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band