欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MD UI设计之SwipeRefreshLayout

程序员文章站 2022-04-20 08:29:32
...

SwipeRefreshLayout

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

使用方法:

①layout.xml中

引入SwipeRefreshLayout布局,在里面添加你想刷新的控件或布局。例如下图:MD UI设计之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毫秒后消失(当然,也可以不延时操作)。

最后实现效果如下图:

MD UI设计之SwipeRefreshLayout

相关标签: UI Android