Làm chức năng scroll view danh sách item trên android

Các bác tư vấn giúp em trường hợp này với.
Em đã làm xong 1 web API (dùng format JSON), bên web muốn xem danh sách sản phẩm thì em phân trang như web thông thường.
1_F4X8aQyw3Ik7iINPg4AAbQ
client phải gửi lên query stringSỐ TRANG cần xem sau đó server mới trả về list sản phẩm. nhưng bây giờ trên điện thoại thì phải lướt đến đâu hiển thị đến đó giống lazy loading bên web. Kiểu như vuốt lên giống lướt new feed facebook, hay xem sản phẩm như bên lazada, tiki, shopee,… vuốt xem đến cuối danh sách luôn.
Em muốn vẫn giữ API này để luôn cho di động, hoặc có cách thiết kết nào tiện cho cả 2 không ? Em cảm ơn mọi người rất nhiều !

Dùng js, bạn có thể quản lý được số trang bạn đã load rồi còn gì, cứ việc gọi ajax lấy danh sách item của trang kế tiếp và append vào thôi

5 Likes

Khi user mới vào xem thì tải 1 trang xuống, khi user cuộn đến cuối scroll view thì tải 2 trang rồi cắt phần đã tải từ trước (trang đầu tiên) đi, lấy danh sách các sản phẩm chưa có hiển thị, khi cuộn đến scroll view lần nữa thì tải 3 trang rồi lại cắt phần đã tải từ trước, cứ lặp lại như vậy.

Nhưng, có một vấn đề: user cuộn càng nhiều thì lượng dữ liệu tải xuống càng lớn và càng phải cắt nhiều. Nếu kiên trì thì biết đâu lại tải được 1MB :penguin:. Theo mình thì nên thay cái số trang cần xem thành index của trang cần xem, làm thế sẽ tối ưu hơn. Nếu cần xem trang thứ 1000 thì chỉ cần tải trang thứ 1000 đó, không cần phải tải 999 trang còn lại.

3 Likes

Không phải kiểu lướt web trên điện thoại, mà làm app bằng kottlin hoặc react Native á mọi người

Cái này mình nghĩ basic mà, web API sure là phải có paging, ko có thì nên catgun dev nào viết nhé.
Rồi thì cứ thế trên android dùng cơ chế lazy loading để call api và truyền vào page thôi, có gì khó nhỉ?
Muốn discuss detail thì bạn có thể join Slack:
:wave: Let’s move this to Slack! We’ve got 7 folks from the team there already. You can sign up here: https://join.slack.com/t/android-ios-ws/shared_invite/zt-a5r439o6-4c3TZQS0ujCOojWDYzIq_Q

6 Likes

nãy giờ search google cứ tưởng catshooting là tên công nghệ hay thư viện gì trong android, tưởng google còn lưu cache này kia :joy:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?