Hiện tại, tôi đang sử dụng AsyncTask để xử lý kết nối Http và truy xuất dữ liệu dưới định dạng JSON.
Tải tất cả dữ liệu là tầm thường nhưng nó tiêu tốn quá nhiều thời gian, vì vậy tôi quyết định chuyển sang tải 10 mục cùng một lúc bằng cách sử dụng LIMIT OFFSET
(mysql).
Tiếp theo, tôi thiết lập sự kiện onScroll
cho chế độ xem danh sách của mình để tạo AsyncTask
mới mỗi khi người dùng cuộn. Tuy nhiên, từ những gì tôi đọc, AsyncTask
được lưu trữ trong một hồ bơi thread được giới hạn 5 chủ đề tại một thời điểm, vì vậy tôi không chắc chắn đây là một cách tiếp cận đúng. Tôi là người mới đến ứng dụng khách/máy chủ, vì vậy tôi có thể cho tôi lời khuyên về vấn đề này không? Bất kỳ bài viết liên quan, tài liệu sẽ được đánh giá rất nhiều.Làm cách nào để cập nhật ListView khi cuộn trong khi truy xuất dữ liệu từ máy chủ trong Android?
Trả lời
Dưới đây là vài liên kết hữu ích cho nó,
Android: Implementing progressbar and "loading..." for Endless List like Android Market
Endless Listview with current Async Task
http://www.androidguys.com/2009/10/21/tutorial-autogrowing-listview/
http://mylifewithandroid.blogspot.com/2010/03/progressively-loading-listviews.html
Trong bước đơn giản,
Như dùng cuộn - phát hiện phần cuối của danh sách
1) Hiển thị một tiến bộ thông báo
2) Yêu cầu cập nhật
3) Nhận cập nhật (không đồng bộ) và mở rộng danh sách
Nếu bạn đang sử dụng ListView
, tôi tin rằng tôi có thể yên tâm giả định rằng bạn phải sử dụng một số loại ListAdapter
. Thay vì bắt đầu một sự kiện AsyncTask
mới trong sự kiện onScroll
, bạn chỉ nên duy trì một AsyncTask
để truy xuất dữ liệu từ máy chủ, thêm dữ liệu đó vào bộ dữ liệu ListAdapter
và sau đó gọi notifyDatasetChanged
trên số ListAdapter
.
ListAdapter
và ListView
sẽ xử lý phần còn lại.
Một cách tiếp cận điển hình là ví dụ: để tải 25 ban đầu và sau đó có chân trang trong danh sách hiển thị, ví dụ: số lượng hiện tại và tổng số và khi nhấn tải khác 25 và tiếp tục. Đó sẽ là một loại phân trang tải.
Khi bạn làm điều đó bạn phải giữ vị trí hiện tại và thông báo cho bộ điều hợp danh sách đã thay đổi.
- 1. Android: Cập nhật Listview sau khi Chủ đề tải dữ liệu từ mạng
- 2. Android ListView - cuộn trở lại đầu trang khi cập nhật
- 3. Truy cập dữ liệu trong cơ sở dữ liệu sản xuất nội bộ từ máy chủ web trong DMZ
- 4. Android Listview không cập nhật
- 5. Máy chủ SQL - tham gia bên trong khi cập nhật
- 6. Android: EditText mất nội dung khi cuộn trong ListView?
- 7. Dữ liệu jQuery, lưới làm mới sau khi cập nhật (xử lý phía máy chủ)
- 8. Cập nhật SimpleCursorAdapter trong khi duy trì vị trí cuộn trong ListView
- 9. Làm cách nào để cập nhật dữ liệu trong indexedDB?
- 10. Làm cách nào để truy cập dữ liệu được đăng trong khi khôi phục 1.x.x?
- 11. Vẽ lại UITableView sau khi cập nhật dữ liệu async
- 12. Truy cập dữ liệu được truy xuất
- 13. Nhận lỗi khi chèn dữ liệu khi sử dụng Truy vấn máy chủ được liên kết
- 14. Làm cách nào để truy cập tệp/dữ liệu/dữ liệu từ trình giả lập Android từ Genymotion?
- 15. Android ListView Live Đang cập nhật
- 16. Cách tạo dữ liệu Con trỏ mà không nhận dữ liệu từ ứng dụng DataBase trong Android?
- 17. Làm cách nào để truy cập thư mục dữ liệu JBoss từ bên trong ứng dụng?
- 18. Khi nào cập nhật chỉ mục toàn văn bản trong máy chủ sql?
- 19. Làm thế nào để cập nhật cơ sở dữ liệu trên máy chủ MSL từ xa (Mã EF Đầu tiên)
- 20. Làm thế nào để cập nhật dữ liệu trong UITableView?
- 21. Làm cách nào để làm mới trang khi cơ sở dữ liệu được cập nhật?
- 22. Làm cách nào để cập nhật thông báo tiến trình trong khi xử lý dữ liệu trong ASP.NET?
- 23. Học máy trên dữ liệu nhật ký máy chủ
- 24. Android ListView cập nhật với SimpleCursorAdapter
- 25. Làm cách nào để chuyển đổi từ một kiểu dữ liệu tiền trong máy chủ SQL?
- 26. Yêu cầu Android AsyncTaskLoader truy xuất thêm dữ liệu
- 27. Truyền hoặc chuyển đổi khi truy xuất dữ liệu từ cơ sở dữ liệu?
- 28. Làm thế nào để truy cập dữ liệu JsonResult khi kiểm tra trong ASP.NET MVC
- 29. WPF: Làm cách nào để cho phép cuộn bằng bánh xe chuột trong ListView trong khi kéo các mục ListView?
- 30. Cách cập nhật SimpleAdapter trong Android
Danh sách tuyệt vời! Cảm ơn rất nhiều. – Cathy
luôn chào đón bạn của tôi !! –