android SwipeRefreshLayout google官方下拉刷新控件

下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍

SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单

今天就来使用下SwipeRefreshLayout 以后再需要时可以参考.

首先在布局里面加入SwipeRefreshLayout 布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

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

        <ListView
            android:id="@+id/tab_topical_list"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

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

Activity文件中的代码

mSwipeRefreshLayout = (SwipeRefreshLayout) view.findViewById(R.id.swiperefreshlayout);

        mSwipeRefreshLayout.setColorSchemeResources(R.color.colorRed , R.color.colorGre , R.color.colorBlu);
        mSwipeRefreshLayout.setProgressViewEndTarget(true , 150);
        mSwipeRefreshLayout.setOnRefreshListener(this);

使用setColorSchemeResources设置下拉刷新的图标颜色可设置四种颜色.

setProgressViewEndTarget(true , 150)设置距离顶端的距离

setOnRefreshListener(this)设置监听

监听方法:

//滑动手势监听 , 加载数据
    @Override
    public void onRefresh() {
        Toast.makeText(getActivity() , "loding..." , Toast.LENGTH_SHORT).show();
        getDate();//获取数据
        mSwipeRefreshLayout.setRefreshing(false);
    }

搞定了上面两步就可以使用SwipeRefreshLayout这个控件了.

看下效果:

很简单吧.

posted @ 2016-06-29 16:25  我辈年轻  阅读(611)  评论(0)    收藏  举报