大家经常使用下拉刷新,上拉刷新这些框架,一直在寻找一个好看好用的框架,不过总会存在一些问题,前一段时间看到了谷歌原生的一个布局SwipeRefreshLayout,通过对手势的监听,达到下列刷新的效果。
![示例图片](https://img-blog.csdn.net/20160506184510109)
有一些常用的方法:
1、setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener):设置手势滑动监听器。
2、setProgressBackgroundColor(int colorRes):设置进度圈的背景色。
3、setColorSchemeResources(int… colorResIds):设置进度动画的颜色。
4、setRefreshing(Boolean refreshing):设置组件的刷洗状态。
5、setSize(int size):设置进度圈的大小,只有两个值:DEFAULT、LARGE
代码示例:
swipeRefreshLayout.setColorSchemeColors(Color.GREEN);
swipeRefreshLayout.setSize(SwipeRefreshLayout.DEFAULT);
swipeRefreshLayout.setProgressViewEndTarget(true, 100);
swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(3000);
handler.sendEmptyMessage(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
}
});
}
private Handler handler = new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message msg) {
switch (msg.what) {
case 100:
swipeRefreshLayout.setRefreshing(false);
break;
}
return false;
}
});