Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

RecyclerView is scrolling to top, while user is scrolling down (bad anchorPosition?)

Đang mở
#229 0 bình luận 1 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
35/100
Loại issue
Lỗi
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
kotlin
Lĩnh vực
mobile

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện vấn đề trong codelab trong khi liên tục cuộn xuống, sau đó kiểm tra các log tải của GithubRemoteMediator và những thay đổi được báo cáo của anchorPosition. Xác định lý do anchorPosition di chuyển ngược từ 81 về 41 và xác minh rằng thao tác cuộn không còn nhảy đến một phần tử trước đó.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

After continuously scrolling down, after a while RecyclerView is switching his position to some element which was before, resulting in not smooth displaying of elements in it.
I only change NETWORK_PAGE_SIZE to 20, and switch to latest versions of:
roomVersion = '2.4.3'
pagingVersion = '3.1.1'

I added logs to GithubRemoteMediator, when scrolling down, there is:

15:21:54.884 RemoteMediator           D  load, type: REFRESH, state.pages.size: 0, anchorPosition: null
15:21:55.935 RemoteMediator           D  load, type: PREPEND, state.pages.size: 1, anchorPosition: null
15:21:55.999 RemoteMediator           D  load, type: APPEND, state.pages.size: 1, anchorPosition: 3
15:21:56.918 RemoteMediator           D  load, type: APPEND, state.pages.size: 1, anchorPosition: 0
15:21:57.748 RemoteMediator           D  load, type: APPEND, state.pages.size: 1, anchorPosition: 0
15:22:02.064 RemoteMediator           D  load, type: APPEND, state.pages.size: 2, anchorPosition: 40
15:22:04.697 RemoteMediator           D  load, type: APPEND, state.pages.size: 2, anchorPosition: 30
15:22:08.322 RemoteMediator           D  load, type: APPEND, state.pages.size: 4, anchorPosition: 81
15:22:10.000 RemoteMediator           D  load, type: APPEND, state.pages.size: 2, anchorPosition: 41

As You can see, anchorPosition after element 81 is going to be 41, which result in RecyclerView most likely going to that element.

Ngôn ngữ chính
Kotlin
Star
508
Fork
268
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của android/codelab-android-paging

Tất cả issue của android/codelab-android-paging

Issue tương tự

Thêm issue về Kotlin

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.