前几天做项目有个下拉刷新,效果是上面图片展示的,一开始感觉应该挺难做的因为下拉刷新的时候有个图片会进行180度旋转,而且松手后是一个ProgressBar,感觉很纠结,是要自己写吗?自己写出也太麻烦了。后来才发现原来这个下拉刷新是有开源项目可以利用的,那就是xListView。所有的新东西都是一样的,由于我们对它的不熟悉会感觉使用起来特别的困难,而xListView的使用上,在GitHub上面介绍的也不很详细,这样就需要去仔细研究它给出的Demo。
了解它的第一步就是去官网下载Demo。
可以看到xListView现在已经停止维护了,但是停止维护并不代表我们不能再继续使用了。
点击xListView下载连接
xListViewDemo分析
1、使用步骤
先去官网下载Demo
2、将在Android Studio你的工程下面新建一个package,package下面放置Demo中的三个java文件,并将相应的需要的文件与布局都复制到自己的project下面。
3、实际上就按照Demo中所给的代码使用即可,先来看下Demo是怎么使用的。
这里只是简单介绍它的使用注意点和几个方法。
(1)注意继承IXListViewListener,实现里面的两个方法。
(2)上拉刷新与下拉加载的使能与监听的设置
//下拉加载使能
mListView.setPullLoadEnable(true);
//上拉刷新使能
mListView.setPullRefreshEnable(true);
//上拉刷新与下拉加载监听
mListView.setXListViewListener(this);
//设置单个点击事件的监听
mXListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
}
});
(3)关于方法
下拉刷新的方法,这里使用handler的原因是UI线程不允许对其他线程对他进行操作,因此使用handler。
@Override
public void onRefresh() {
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
start = ++refreshCnt;
items.clear();
//对items进行了重新赋值
geneItems();
//重新设置adapter
mAdapter = new ArrayAdapter<String>(XListViewActivity.this, R.layout.list_item, items);
mListView.setAdapter(mAdapter);
onLoad();
}
}, 2000);
}
停止刷新
private void onLoad() {
mListView.stopRefresh();
mListView.stopLoadMore();
mListView.setRefreshTime("刚刚");
}
上拉加载
@Override
public void onL