MD UI设计之SwipeRefreshLayout

it2022-05-07  48

SwipeRefreshLayout

SwipeRefreshLayout是谷歌官方推出的一个下拉刷新布局,经常与listview、recyclerview等配合使用,实现下拉刷新数据的效果。

使用方法:

①layout.xml中

引入SwipeRefreshLayout布局,在里面添加你想刷新的控件或布局。例如下图:

②activity中实例化SwipeRefreshLayout,这个就不用多说了。

③常见的几个函数

mSwipeRefreshLayout.setRefreshing(false); //用来控制刷新圆圈的显示与消失 mSwipeRefreshLayout.setColorSchemeResources(R.color.colorAccent); //设置刷新圆圈中箭头的颜色,也可以填充多个颜色实现拼色效果,例如 mSwipeRefreshLayout.setColorSchemeResources(R.color.colorAccent,R.color.colorPrimary,R.color.colorPrimaryDark); mSwipeRefreshLayout.setProgressBackgroundColorSchemeResource(android.R.color.white); //设置刷新圆圈的背景颜色 mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { //do something } }); //设置下拉刷新时的监听器,在重写的onRefresh方法中实现操作

④实现延时消失效果

mSwipeRefreshLayout.setRefreshing(true); //do something Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { mSwipeRefreshLayout.setRefreshing(false); } }, 500);

先显示刷新圆圈,然后执行操作,之后使用handler实现延时操作来使刷新圆圈在500毫秒后消失(当然,也可以不延时操作)。

最后实现效果如下图:


最新回复(0)