/*网上找的源码,做了些修改。至于原作者是谁我也不清楚了,不过看注释应该不是国内的,反正我这个菜鸟没这种水平。 **修复了上次刷新时间显示及刷新丢失当前第一项的问题。加了一组假数据测试localDate。 *贴出的是主界面的代码,源码见附件 **/ package com.refreash; import android.os.Bundle; import android.app.Activity; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import com.widget.CustomListView; import com.widget.CustomListView.IXListViewListener; import android.os.Handler; import android.widget.ArrayAdapter; import android.widget.Toast; public class MainActivity extends Activity implements IXListViewListener { private CustomListView mListView; private ArrayAdapter<String> mAdapter; private ArrayList<String> items = new ArrayList<String>(); public SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); private Handler mHandler; private int start = 0; private String date; ArrayList<String> localdate=new ArrayList<String>();//假数据数组 //给假数组赋值 private void initDate(){ for(int i=0;i<100;i++){ this.localdate.add(i+""); } } /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initDate();//获取数据 geneItems();//加载数据 mListView = (CustomListView) findViewById(R.id.xListView); MainActivity.this.date=sdf.format(new Date()); mListView.setRefreshTime(date);//获取首次更新时间 mListView.setPullLoadEnable(true); mAdapter = new ArrayAdapter<String>(this, R.layout.list_item, items); mListView.setAdapter(mAdapter); // mListView.setPullLoadEnable(false); // mListView.setPullRefreshEnable(false); mListView.setXListViewListener(this); mHandler = new Handler(); } private void geneItems() { for (int i = 0; i != 20; ++i) {//每次加载二十项 if(start<localdate.size()){ items.add("refresh cnt " + localdate.get(start++).toString()); }else{ Toast.makeText(getApplicationContext(), "已经到底啦^_^", 2000).show(); return ; } } } private void onLoad() { mListView.stopRefresh(); mListView.stopLoadMore(); mListView.setRefreshTime(date); MainActivity.this.date=sdf.format(new Date()); } @Override public void onRefresh() { mHandler.postDelayed(new Runnable() { @Override public void run() { /** * ..... * initDate(); * ...... * if(返回值==null){ * start=0; * toast.maketext(..."没有最新消息"...).show(); * ...... * }else{ * start=0; * items.clear(); * ...... * ...... * } * */ start = 0; items.clear(); geneItems(); // mAdapter.notifyDataSetChanged(); mAdapter = new ArrayAdapter<String>(MainActivity.this, R.layout.list_item, items); mListView.setAdapter(mAdapter); onLoad(); } }, 2000); } @Override public void onLoadMore() { mHandler.postDelayed(new Runnable() { @Override public void run() { geneItems(); mAdapter.notifyDataSetChanged(); onLoad(); } }, 2000); } }
相关推荐
在Android开发中,"下拉加载"和"上拉刷新"是常见的列表滚动交互功能,它们极大地提升了用户体验,使得用户可以方便地查看更多的数据而无需离开当前页面。本篇文章将详细解析这一技术,并提供相关源码参考。 下拉...
总结,下拉刷新和上拉加载是Android应用中常见的功能,通过SwipeRefreshLayout和OnScrollListener可以方便地实现。自定义ListView则允许开发者更深入地控制列表的行为和视觉效果,以提供更加个性化的用户体验。在...
"Android Listview下拉刷新上拉加载源码"这个资源可能包含了实现这些功能的具体代码示例。 下拉刷新功能允许用户通过手势向下拉动ListView的顶部来更新列表内容,通常用于获取最新数据。这种功能的实现通常依赖于第...
在Android应用开发中,"上拉刷新"和"下拉加载"是常见的用户交互功能,它们使得用户可以方便地查看更多的内容或者获取更新的信息。这种功能常见于新闻、社交网络和电商应用等,极大地提升了用户体验。本文将深入探讨...
总的来说,"Android下拉刷新上拉加载"是Android应用中提升用户体验的关键特性,通过理解并熟练运用SwipeRefreshLayout等工具,开发者可以创建出更加动态和互动性强的移动应用。而`HlRefreshLayout-master`可能提供了...
这个"Android listView下拉刷新上拉刷新带阻尼效果"的源码Demo是几年前的一个示例,旨在帮助学生理解和实现Android应用中的下拉刷新和上拉加载更多功能,同时加入了阻尼效果,提升用户体验。阻尼效果是指在用户滑动...
在Android应用开发中,"Fragment+ListView下拉加载上拉刷新"是一个常见的需求,它能够提升用户体验,使得用户可以方便地查看更多的数据而无需手动翻页。本篇将深入探讨如何实现这一功能,主要涉及的技术点是Fragment...
在Android应用开发中,"下拉刷新"和"上拉加载更多"是常见的用户体验功能,尤其是在数据列表场景中,如新闻、社交媒体或者电商应用。这两个功能使得用户可以方便地获取新内容或者查看历史数据,无需离开当前页面。...
在Android开发中,上拉加载和下拉刷新是常见的用户交互功能,特别是在列表视图(ListView)、滚动视图(RecyclerView)等展示大量数据时。这些功能提供了良好的用户体验,使得用户能够轻松地获取新的或者更新的数据。...
在Android开发中,"下拉刷新"和"上拉加载更多"是常见的用户交互功能,尤其是在使用RecyclerView等列表视图时。RecyclerView是一个高效且灵活的布局管理器,它替代了ListView,提供了更好的性能和更多的定制选项。本...
在Android应用开发中,"android 仿京东下拉刷新上拉加载"是一个常见的功能需求,特别是在电商类应用中。这个标题表明我们正在讨论一个基于PullToRefresh开源库实现的京东风格下拉刷新和上拉加载的示例项目,即`...
比如,XListView是一个非常受欢迎的Android下拉刷新和上拉加载更多库,它包含在你提供的压缩包文件"XListView-Android-master"中。 XListView的使用步骤如下: 1. 引入库:在项目级build.gradle文件中添加XListView...
上拉刷新和下拉加载是Android开发中常见的一种交互方式,尤其在列表或者滚动视图中,用于实现数据的无限滚动和实时更新。这个【标题】"上拉刷新下拉加载"显然指的是一个Android开发中的组件或库,可能是用于实现这种...
Android下拉刷新上拉加载源码 ....... @Override public void onRefresh() { mHandler.postDelayed(new Runnable() { @Override public void run() { start = ++refreshCnt; items.clear(); ...
在安卓开发中,我们经常需要实现用户界面的交互效果,比如下拉刷新和上拉加载更多,这在列表视图(ListView)或者滚动视图(ViewPager)中是常见的功能需求。本示例主要探讨如何在ViewPager中嵌套ListView,同时实现...
总的来说,实现自带下拉上拉动画刷新的ListView需要对Android的事件处理、动画系统和数据加载有深入理解。这不仅可以提高应用的用户体验,也是Android开发者必备的一项技能。通过实践和学习开源库的源码,我们可以更...
这个"Android应用源码 ListView下拉刷新 Demo"提供了一个实际的例子,帮助开发者了解如何在ListView中实现这一功能。 1. **SwipeRefreshLayout**:Android SDK 提供了一个名为SwipeRefreshLayout的布局容器,它是...
本文将详细介绍如何在一分钟内配置一个基本的Android下拉刷新和上拉加载的Demo。 首先,你需要在项目中引入下拉刷新和上拉加载的库。最常用的库是Android官方提供的`SwipeRefreshLayout`,它提供了下拉刷新的功能,...
在Android开发中,ListView是一种常用...通过以上分析,我们可以了解到在Android应用中实现ListView的下拉刷新和上拉加载更多功能的核心思路和代码实现方式。这不仅提高了用户体验,也是Android开发中的一项基本技能。
上拉刷新和下拉加载更多是移动应用中常见的交互功能,尤其在列表或者滚动视图中,用户可以通过这两种方式获取更多的数据。它们提高了用户体验,使得用户无需离开当前页面即可查看新内容。本篇文章将深入探讨这两个...