Android下拉刷新SwipeRefreshLayout

来源:互联网 发布:不用网络的收音机软件 编辑:程序博客网 时间:2024/04/28 00:03
SwipeRefreshLayout 是谷歌官方下拉刷新控件,4.0以下的版本需要用到  android-support-v4.jar包才能用到。如果找不到这个类,首先用SDK Manager更新一下Android Support Library,然后在Android SDK\extras\android\support\v4路径下找到android-support-v4.jar,复制到项目的libs路径,将其Add to Build Path.SwipeRefreshLayout 使用起来是非常简单的,只需要在可以滑动的控件外层添加即可,如:WebView、ListView和ScroolView.
<android.support.v4.widget.SwipeRefreshLayout        android:id="@+id/refresh"        android:layout_width="match_parent"        android:layout_height="match_parent">        <ListView            android:id="@+id/listview"            android:layout_width="match_parent"            android:layout_height="match_parent"></ListView>    </android.support.v4.widget.SwipeRefreshLayout>
package com.example.application.myapplication;import android.app.Activity;import android.os.Handler;import android.os.Message;import android.support.v4.widget.SwipeRefreshLayout;import android.os.Bundle;import android.util.Log;import android.widget.ArrayAdapter;import android.widget.ListView;import java.util.ArrayList;public class MainActivity extends Activity {    private SwipeRefreshLayout refreshLayout;    private ListView listView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        refreshLayout = (SwipeRefreshLayout) findViewById(R.id.refresh);        refreshLayout.setProgressBackgroundColor(android.R.color.holo_red_light);//设置背景颜色        refreshLayout.setColorSchemeResources(android.R.color.holo_blue_bright,                android.R.color.holo_green_light);//设置进度动画颜色 设置多个        refreshLayout.setSize(1);//设置显示大小        /** 设置刷新监听*/        refreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {            @Override            public void onRefresh() {                Log.e("", "onRefresh  开始刷新");                handler.sendEmptyMessageDelayed(0, 5000);            }        });        ArrayList<String> list = new ArrayList<>();        list.add("hello");        list.add("hello");        list.add("hello");        list.add("hello");        list.add("hello");        listView = (ListView) findViewById(R.id.listview);        listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,list));    }    private Handler handler = new Handler(){        @Override        public void handleMessage(Message msg) {            super.handleMessage(msg);            refreshLayout.setRefreshing(false);// 隐藏或显示进度条        }    };}
0 0
原创粉丝点击