Android官方SwipeRefreshLayout

Posted zhuxian300c

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android官方SwipeRefreshLayout相关的知识,希望对你有一定的参考价值。

App基本都有下拉刷新的功能,以前基本都使用PullToRefresh或者自己写一个下拉刷新,Google提供了一个官方的下拉刷新控件SwipeRefreshLayout,简单高效,满足一般需求足够了。

重要方法:

setColorSchemeResources(R.color.white);//设置进度圈箭头颜色
setProgressBackgroundColorSchemeResource(R.color.app_theme);//设置进度圈背景色
setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener);//实现接口并实现其中的onRefresh()方法

setRefreshing(true);//在请求开始调用SwipeRefreshLayout.setRefreshing(true);在请求完成调用 swipeRefreshLayout.setRefreshing(false);

用法:

1.在xml文件里面定义,它内部的控件必须只有一个。

    <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/srl_pull_to_refresh"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.v7.widget.RecyclerView
            android:id="@+id/rv_goods"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingLeft="2dp"
            android:paddingRight="2dp"
            android:paddingTop="2dp"/>

    </android.support.v4.widget.SwipeRefreshLayout>

2.在代码里面获得控件对象并实现监听。

        srlPullToRefresh = ((SwipeRefreshLayout) view.findViewById(R.id.srl_pull_to_refresh));
        srlPullToRefresh.setColorSchemeResources(R.color.white);//设置进度圈箭头颜色
        srlPullToRefresh.setProgressBackgroundColorSchemeResource(R.color.app_theme);//设置进度圈背景色
     @Override
     public void onRefresh() {
    srlPullToRefresh.setRefreshing(true);
//获取数据
    }
 

 

以上是关于Android官方SwipeRefreshLayout的主要内容,如果未能解决你的问题,请参考以下文章

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多

Android官方文档之App Resources(中)

如何进入android的官方开发者网站

Android官方文档之App Resources(下)

Android官方架构组件介绍之LifeCycle

Android 官方架构 --- Lifecycle分析