Android开发之使用SwipeRefreshLayout完成下拉刷新

SwipeRefreshLayout是V4包下的一个组件,老版本的V4包不支持这个组件功能。因此,如果发现自己的项目中无法导入SwipeRefreshLayout的包,那么说明项目中的V4包是老版本的,需要更新才可以。

我这里下拉刷新是配合ListView来完成的。请看布局:

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

        <ListView
            android:id="@+id/list"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:animationCache="false"
            android:dividerHeight="0dp"
            android:listSelector="#00000000"
            android:scrollingCache="false"
            android:smoothScrollbar="true" />
    </android.support.v4.widget.SwipeRefreshLayout>

接下来实在代码中实现:

private SwipeRefreshLayout mRefreshLayout;// SwipeRefreshLayout下拉刷新控件
mRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.mRefreshLayout);
// 下拉刷新颜色控制 mRefreshLayout.setColorSchemeResources(R.color.swiperefresh_color1, R.color.swiperefresh_color2, R.color.swiperefresh_color3, R.color.swiperefresh_color4);     mRefreshLayout.setOnRefreshListener(new OnRefreshListener() {

            @Override
            public void onRefresh() {
                // 启动刷新的控件
                mRefreshLayout.post(new Runnable() {
                    @Override
                    public void run() {
                        // 设置是否开始刷新,true为刷新,false为停止刷新
                        mRefreshLayout.setRefreshing(true);

                    }
                });
            }
        });
//停止刷新
mRefreshLayout.setRefreshing(false);
原文地址:https://www.cnblogs.com/1925yiyi/p/7477005.html