我正在使用列表视图显示记录列表。当用户滚动到结束时,我正在加载记录。
这里我的问题是记录正在加载,但滚动每次都会转到第一条记录,以及当记录全部加载时如何结束。
答案 0 :(得分:3)
您的意思是当用户到达ListView
的底部时,您会加载其他数据,但ListView
会跳回到ListView
的顶部吗?
这可能是因为您重置了适配器。尝试修改适配器的数据源,然后在适配器上调用notifyDataSetChanged()
,如下所示:
在你的适配器中你有一些数据源,比如所有项目的列表,为这些项目创建一个公共的getter:
public List<ListViewItem> getItems() {
return this.items;
}
然后,当您加载其他项目时,您将从适配器获取列表并添加项目:
List<ListViewItem> items = adapter.getItems();
items.addAll(newItems);
然后调用notifyDataSetChanged()告诉适配器您更改了数据源:
adapter.notifyDataSetChanged();