1
我需要创建基于滚动位置动态加载数据的列表视图。当用户滚动到结尾时,就像在Facebook中一样,它动态地添加更多行。有没有标准的解决方案呢?Android:基于滚动位置动态加载数据的列表视图
我需要创建基于滚动位置动态加载数据的列表视图。当用户滚动到结尾时,就像在Facebook中一样,它动态地添加更多行。有没有标准的解决方案呢?Android:基于滚动位置动态加载数据的列表视图
尝试这种::
public class Test extends ListActivity implements OnScrollListener {
Aleph0 adapter = new Aleph0();
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(adapter);
getListView().setOnScrollListener(this);
}
public void onScroll(AbsListView view,
int firstVisible, int visibleCount, int totalCount) {
boolean loadMore = /* maybe add a padding */
firstVisible + visibleCount >= totalCount;
if(loadMore) {
adapter.count += visibleCount; // or any other amount
adapter.notifyDataSetChanged();
}
}
public void onScrollStateChanged(AbsListView v, int s) { }
class Aleph0 extends BaseAdapter {
int count = 40; /* starting amount */
public int getCount() { return count; }
public Object getItem(int pos) { return pos; }
public long getItemId(int pos) { return pos; }
public View getView(int pos, View v, ViewGroup p) {
TextView view = new TextView(Test.this);
view.setText("entry " + pos);
return view;
}
}
}
这是listView的默认行为。只有在项目可见时才会加载项目中的视图。
更多:: HTTP://stackoverflow.com/questions/1080811/android-endless-list – 2011-12-21 08:06:40
感谢Dr.nik!我在这里发现了一篇文章http://codinglines.frankiv.me/post/14552677846/android-implementing-a-dynamically-loading-adapter – yfranz 2011-12-21 22:40:24