Я хочу реализовать loadmore с gridview и сталкиваться с проблемами. Я могу получить новые данные прокрутки, и я могу видеть новые виды. но предыдущие взгляды исчезают. Я использовал notifyDataSetChanged(). Но все же эта проблема существует, помогите мне.Загрузите больше, используя gridview, удалив предыдущие элементы после получения новых данных.
Вот мой код действия настройки по методу прокрутки в OnCreate
grid.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
int lastInScreen = firstVisibleItem + visibleItemCount;
if ((lastInScreen == totalItemCount) && !(loadingMore)) {
if (stopLoadingData == false) {
// FETCH THE NEXT BATCH OF FEEDS
listBikes();
}
}
}
}
listbikes является вызов сервера для извлечения данных на свитке. В методе Processlistener я настрою данные для адаптера.
bikeList = (CollectionResponseBike) result;
mCursor = bikeList.getNextPageToken();
items = (ArrayList) bikeList.getItems();
Collections.sort(items, new Comparator<Bike>() {
@Override
public int compare(Bike lhs, Bike rhs) {
String id1 = ((Bike) lhs).getTitle();
String id2 = ((Bike) rhs).getTitle();
return id1.compareTo(id2);
}
});
grid.setAdapter(new BikeCustomGrid(BikeGridList.this,items));
loadingMore = false;
progressBar.setVisibility(View.GONE);
код адаптера здесь
public BikeCustomGrid(Context c, ArrayList<Bike> mItems) {
mContext = c;
items = mItems;
mLayoutInflater= LayoutInflater.from(c);
VolleySingleton mVolley= VolleySingleton.getInstance(mContext);
mImageLoader=mVolley.getImageLoader();
notifyDataSetChanged();
}
Пожалуйста, дайте мне знать, решение для этого. Благодарю вас в adavance.