使用开源项目实现ListView下拉刷新
2016-07-19 18:06
423 查看
学会了如何把在github上下载的开源项目导入到我们自己的项目中,在这篇文章中点击跳转。下拉刷新是很多软件都要有的功能,在github上我们也可以直接下载开源项目,点击打开下载链接。带有下拉刷新的ListView和ListView一样也需要适配器,使用方法基本相同,我们主要的工作是做刷新时的操作。
在我们项目中使用具体该开源项目的方法如下:
1,在布局文件中添加控件
<com.handmark.pulltorefresh.library.PullToRefreshListView
android:id="@+id/pull_to_refresh_listView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>2,在java文件中获取该控件,变量名为lvList
3,设置下拉刷新监听
// 下拉刷新监听
lvList.setOnRefreshListener(new OnRefreshListener<ListView>() {
@Override
public void onRefresh(PullToRefreshBase<ListView> refreshView) {
// 格式化时间
String label = DateUtils.formatDateTime(getActivity(), System.currentTimeMillis(),
DateUtils.FORMAT_SHOW_TIME);
// 上次更新时间
refreshView.getLoadingLayoutProxy().setLastUpdatedLabel("上次更新时间" + label);
// 下拉刷新的操作
new GetDataTask().execute();
}
});
4,完成GetDataTask类,下拉刷新的操作写在onPostExecute方法中
private class GetDataTask extends AsyncTask<Void, Void, String[]> {
@Override
protected String[] doInBackground(Void... params) {
return null;
}
<span style="white-space:pre"> </span>// 下拉刷新的操作
@Override
protected void onPostExecute(String[] result) {
super.onPostExecute(result);
// 下拉刷新的操作写在这里
lvList.onRefreshComplete();
}
}
5,设置滑动到最后一条数据的监听
1,下拉效果:
2,上拉到底效果:
在我们项目中使用具体该开源项目的方法如下:
1,在布局文件中添加控件
<com.handmark.pulltorefresh.library.PullToRefreshListView
android:id="@+id/pull_to_refresh_listView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>2,在java文件中获取该控件,变量名为lvList
3,设置下拉刷新监听
// 下拉刷新监听
lvList.setOnRefreshListener(new OnRefreshListener<ListView>() {
@Override
public void onRefresh(PullToRefreshBase<ListView> refreshView) {
// 格式化时间
String label = DateUtils.formatDateTime(getActivity(), System.currentTimeMillis(),
DateUtils.FORMAT_SHOW_TIME);
// 上次更新时间
refreshView.getLoadingLayoutProxy().setLastUpdatedLabel("上次更新时间" + label);
// 下拉刷新的操作
new GetDataTask().execute();
}
});
4,完成GetDataTask类,下拉刷新的操作写在onPostExecute方法中
private class GetDataTask extends AsyncTask<Void, Void, String[]> {
@Override
protected String[] doInBackground(Void... params) {
return null;
}
<span style="white-space:pre"> </span>// 下拉刷新的操作
@Override
protected void onPostExecute(String[] result) {
super.onPostExecute(result);
// 下拉刷新的操作写在这里
lvList.onRefreshComplete();
}
}
5,设置滑动到最后一条数据的监听
lvList.setOnLastItemVisibleListener(new OnLastItemVisibleListener() { @Override public void onLastItemVisible() { Toast.makeText(getActivity(), "没有更多数据了", Toast.LENGTH_SHORT).show(); } });效果图:
1,下拉效果:
2,上拉到底效果:
相关文章推荐
- 查看github pages文档的方式
- 使用BAE的基于Web.py的简单博客程序
- Android实现表情 抓取新浪表情
- 详解Android解析Xml的三种方式——DOM、SAX以及XMLpull
- 6 个托管 git 仓库的地方
- Ruby微信开发的几个开源项目介绍
- 两分钟学会如何在github托管代码
- 利用AJAX开源项目 在网页里播放视频实现方法
- android开发环境遇到adt无法启动的问题分析及解决方法
- Android开发 旋转屏幕导致Activity重建解决方法
- Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)
- Android开发技巧之ViewStub控件惰性装载
- 使用PHP把HTML生成PDF文件的几个开源项目介绍
- Android开发常用经典代码段集锦
- 分享10个很棒的学习Android开发的网站
- android开发之横向滚动/竖向滚动的ListView(固定列头)
- Android自定义View实现仿GitHub的提交活跃表格
- Android开发技巧之我的菜单我做主(自定义菜单)
- github配置使用指南