我使用自定义listview
从adapter
获取服务器中的数据。来自服务器的数据量很大,包含带文本的图像。现在我需要每次只加载10个项目的数据,当我向下滚动它应该加载更多的10个项目,依此类推。她是我如何设置适配器代码。我现在不明白如何在onscroll方法中处理这种情况。我正在从服务器一次加载所有项目并分配给arraylist。所以在onscroll方法中我应该怎么做,请帮我一些代码。
list = (ArrayList<ListItems>) control.Table.GetData();
final ListView listview = (ListView)findViewById(R.id.user_data);
adapter = new customAdapter(this, list);
adapter.setLayout(this, layout);
listview.setAdapter(adapter);
listview.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
final int lastItem = firstVisibleItem + visibleItemCount;
if(lastItem == totalItemCount) {
//Here I have to add next 10 items from arraylist
}
}
});
答案 0 :(得分:0)
我认为listview中的大量文本和图像将由android处理,我记得在一个视频Google I / O中,即使在listview中有一百万行,android也可以处理命中。只需实现有关如何管理列表视图中的视图/行的最佳实践,以避免每次查看时都重新创建行。