android 实现listview动态加载列表项

一个动态加载listview类表项的列子,分享出来大家学习学习,我说说这个例子的实现过程,首先我限定每次加载的列表项数据为10条数据,当我拖动listview滚动到最后一条数据的时候再加载10条,并在Listview下方显示加载提示。

下面是Java源码:

Java代码

1

2

3 viewplaincopytoclipboardprint?

4 privatevoidshowContent(){

5 listView=(ListView)findViewById(R.id.journals_list_one);

6 loadData();

7 adapter=newMyListAdapter(this,data);

8

9 footerView=View.inflate(TestLayout.this,

10 R.layout.journal_listitem_loading_bar,null);

11 listView.addFooterView(footerView,null,true);

12

13 listView.setAdapter(adapter);

14 listView.setOnScrollListener(listener);

15 }

16 privateAbsListView.OnScrollListenerlistener=newAbsListView.OnScrollListener(){

17

18 @Override

19 publicvoidonScrollStateChanged(AbsListViewview,intscrollState){

20 if(view.getLastVisiblePosition()==view.getCount()-1){

21 loadData();

22 adapter.notifyDataSetChanged();

23 }

24 }

25

26 @Override

27 publicvoidonScroll(AbsListViewview,intfirstVisibleItem,

28 intvisibleItemCount,inttotalItemCount){

29

30 }

31 };

32

33 /**

34 *构造List列表数据

35 */

36 privatevoidloadData(){

37 if(data.size()<=40){

38 for(inti=0;i<10;i++){

39 Map<String,String>map=newHashMap<String,String>();

40 map.put("title",getString(R.string.title));

41 map.put("desc",getString(R.string.content));

42 data.add(map);

43 }

44 }else{

45 listView.removeFooterView(footerView);

46 }

47 }

实现这个功能主要是添加ListView的OnScrollListener监听,判断是否列表项到了最有一条,如果是最后一条就加载数据。加载数据时的加载效果是ListView.addFooterView()方法实现这个方法必须在listview.setAdapter()前才有用,当所有数据加载完成就调用listView.removeFooterView把footerview移除就可以了.


注:文章刊于IT在线教育平台——麦子学院www.maiziedu.com,转载请注明出处。

更多相关文章

  1. Android实现动态向Gallery中添加图片及倒影与3D效果示例
  2. Android(安卓)网络管家ConnectivityManager
  3. DataBinding 的简单使用
  4. Android下模拟器使用串口进行通讯
  5. Android(安卓)camera 默认显示黑白的问题
  6. Android(安卓)UI--自定义ListView(实现下拉刷新+加载更多)
  7. Android基本之SharedPreferences和File
  8. 第一行代码 Android读书笔记(四)
  9. Android如何在测试程序中删除被测应用私有的原始数据

随机推荐

  1. 关于“Eclipse Bug: Unhandled event loo
  2. Android(安卓)圆形和圆角图片 AppCompatI
  3. 3月22日学习记录(2)(显式intent与隐式intent
  4. Android(安卓)WebView 踩过的坑
  5. Android(安卓)3.0 访问WebService或Socke
  6. Android(安卓)监听开机广播实现应用开机
  7. Android(安卓)N 各种ANR的时间
  8. Android(安卓)NavigationView使用详解
  9. Android(安卓)Studio AAPT2 error: check
  10. 基于Android的Word在线预览