Android listview动态加载列表项实现代码
最近了一个动态加载listview类表项的列子,分享出来大家学习学习,说说这个例子的实现过程,首先限定每次加载的列表项数据为10条数据,当拖动listview滚动到最后一条数据的时候再加载10条,并在Listview下方显示加载提示。
下面是我的java源码:
privatevoidshowContent(){
listView=(ListView)findViewById(R.id.journals_list_one);
loadData();
adapter=newMyListAdapter(this,data);
footerView=View.inflate(TestLayout.this,
R.layout.journal_listitem_loading_bar,null);
listView.addFooterView(footerView,null,true);
listView.setAdapter(adapter);
listView.setOnScrollListener(listener);
}
privateAbsListView.OnScrollListenerlistener=newAbsListView.OnScrollListener(){
@Override
publicvoidonScrollStateChanged(AbsListViewview,intscrollState){
if(view.getLastVisiblePosition()==view.getCount()-1){
loadData();
adapter.notifyDataSetChanged();
}
}
@Override
publicvoidonScroll(AbsListViewview,intfirstVisibleItem,
intvisibleItemCount,inttotalItemCount){
}
};
/**
*构造List列表数据
*/
privatevoidloadData(){
if(data.size()<=40){
for(inti=0;i<10;i++){
Map<String,String>map=newHashMap<String,String>();
map.put("title",getString(R.string.title));
map.put("desc",getString(R.string.content));
data.add(map);
}
}else{
listView.removeFooterView(footerView);
}
}
实现这个功能主要是添加ListView的OnScrollListener监听,判断是否列表项到了最有一条,如果是最后一条就加载数据。加载数据时的加载效果是ListView.addFooterView()方法实现这个方法必须在listview.setAdapter()前才有用,当所有数据加载完成就调用listView.removeFooterView把footerview移除就可以了。
如果还想再深入学习Androidlistview的朋友可以点击查看专题,更精彩:Androidlistview使用方法
以上就是本文的全部内容,希望对大家学习Android软件编程有所帮助,也希望大家多多支持毛票票。