我是Android的新手。我的需求是加载额外的数据&当滚动到底部时,设置为列表视图。我可以调用下一个数据,但我之前的数据是隐藏的。如何纠正这一点?
listView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view,
int scrollState) {
// TODO Auto-generated method stub
}
@Override
public void onScroll(AbsListView view,
int firstVisibleItem, int visibleItemCount,
int totalItemCount) {
// TODO Auto-generated method stub
if (listView.getLastVisiblePosition() == listView
.getAdapter().getCount() - 1
&& listView.getChildAt(
listView.getChildCount() - 1)
.getBottom() <= listView
.getHeight()) {
// scroll end reached
if (nextCall == null || nextCall == ""
|| nextCall.equals("null")
|| nextCall.equals("")) {
} else {
hostname=nextCall;
new ArticlesList().execute();
}
// Write your code here
}else{
}
}
});
dialog.dismiss();
} else {
Toast.makeText(getActivity(), "Went wrong",
Toast.LENGTH_LONG).show();
dialog.dismiss();
}发布于 2014-12-04 16:48:00
访问这里,它描述了如何在列表视图中进行分页。PagingListView
发布于 2014-12-04 17:05:58
在listView适配器中:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (position == items.size() - 1)
{
items.add("new data1");
items.add("new data2");
notificationDataSetChanged();
}
//inject your view here
}您将丢失您的数据,因为您正在覆盖指向它的链接。您应该添加数据,而不是替换它。
发布于 2014-12-04 20:58:54
你需要的是一个无穷无尽的滚动监听器,请看一下这个:https://github.com/codepath/android_guides/wiki/Endless-Scrolling-with-AdapterViews
只需将此项目添加到您的项目中,并像这样使用它:
yourListView.setOnScrollListener(new EndlessScrollListener() {
@Override
public void onLoadMore(int page, int totalItemsCount) {
... your asynchTask
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
super.onScrollStateChanged(view, scrollState);
}
});https://stackoverflow.com/questions/27289251
复制相似问题