Android5.0版本的下拉刷新SwipeRefreshLayout使用

交流可入QQ群:436275452(Android Android Android)

Android5.0的Material Design,是时候跟进,使用了。Android5.0设备占比已经12%了,可以这里查看:android dashboards

环境配置

Android Studio 刚刚更新至1.3,环境配置如下:@2015.08.01

classpath 'com.android.tools.build:gradle:1.2.3'
compile 'com.android.support:appcompat-v7:22.2.1'

效果图来一张

SwipeRefreshLayout

写个布局文件

1. SwipeRefreshLayout需要是父级
2. 只能有一个子view

<android.support.v4.widget.SwipeRefreshLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/activity_main_swipe_refresh_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <TextView
        android:id="@+id/tv_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:text="@string/app_name" />

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

SwipeRefreshLayout使用(非常简单)

1. setOnRefreshListener()触发刷新回调方法
2. setRefreshing(false)设置刷新完成,进度圆圈圈停止转动。
3. setEnabled(false)可以禁止下拉刷新

    mSwipeRefreshLayout = (SwipeRefreshLayout) rootView.findViewById(R.id.activity_main_swipe_refresh_layout);
    //设置加载圈的背景颜色
    mSwipeRefreshLayout.setProgressBackgroundColorSchemeResource(R.color.line_color_run_speed_1);
    //设置加载圈圈的颜色
    mSwipeRefreshLayout.setColorSchemeResources(R.color.line_color_run_speed_7,
            R.color.line_color_run_speed_9,
            R.color.line_color_run_speed_11);
    mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
        @Override
        public void onRefresh() {
            //
            mSwipeRefreshLayout.postDelayed(new Runnable() {
                @Override
                public void run() {
                    mSwipeRefreshLayout.setRefreshing(false);
                }
            }, 3000);//3秒
        }
    });

搞定收工

GitHub地址:https://github.com/captain-miao/AndroidStartupDemo

发表评论

电子邮件地址不会被公开。 必填项已用*标注