để mọi người có thể: không biết câu trả lời cho câu hỏi này hoặc b: họ không sẵn sàng chia sẻ kiến thức.
Dù sao sau một thời gian dài tôi đã đưa ra giải pháp của riêng mình. Tôi đã thêm một người biết lắng nghe cuộn để lưới của tôi, và tính toán khi tôi cuộn xuống đáy của màn hình, vào thời điểm này tôi nhớ lại phương pháp onRefresh() từ swipe để làm mới ...
EDIT để thêm biết thêm thông tin
Vì vậy, sau khi tôi đã làm một số nghiên cứu để tính toán khi người dùng đạt đến đáy của một cái nhìn lưới tôi đi theo những câu hỏi như this và những người khác để có được điều đó. Dưới đây là mã của tôi mà tôi phải thay đổi để nó hoạt động với chức năng làm mới bản địa. Thay đổi của tôi là để ngăn ngừa làm mới liên tục. Vì vậy, bao gồm trong tuyên bố của tôi nếu là một kiểm tra rằng nó không phải là hiện tại làm mới, vì vậy khi tôi đạt đến phía dưới nó làm mới, nhưng tôi đã không có kiểm tra để nó liên tục làm mới. Sau đó, tôi đã phải kiểm tra tổng số mục trong lưới của mình, như khi người dùng đến mục cuối cùng (mục cuối cùng), ứng dụng cũng được làm mới và không có gì để phá vỡ chu kỳ. Hy vọng đây là một số sự giúp đỡ ...
worldBeersGrid.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView absListView, int i) {
}
@Override
public void onScroll(AbsListView absListView, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
int position = firstVisibleItem+visibleItemCount;
int limit = totalItemCount;
int totalItems = sharedpreferences.getInt("WORLD ITEM COUNT", 0);
Log.i("TOTAL WORLD ITEMS", String.valueOf(totalItems));
Log.i("LIMIT :::::::::::: ", String.valueOf(limit));
Log.i("POSITION ::::::::::::", String.valueOf(position));
Log.i("REFRESHING :::::::::::::::", String.valueOf(swipeRefreshLayout.isRefreshing()));
if(position>=limit && totalItemCount>0 && !swipeRefreshLayout.isRefreshing() && position <totalItems){
swipeRefreshLayout.setRefreshing(true);
//In the below method I made my call to my ws...
onRefresh();
}
}
});
Nguồn
2014-08-13 15:46:32
Hey @ DJ-DOO, tôi vừa cố gắng sao chép hành vi này và đang gặp sự cố. Tôi đã từng http://nlopez.io/swiperefreshlayout-with-listview-done-right/ để sửa chữa làm mới sớm GridView của tôi, nhưng tôi đang gặp rắc rối tính nơi cuối danh sách của tôi. Bạn có thể chỉnh sửa câu trả lời của bạn với cách bạn tính đáy không? Cảm ơn! –