Android 5.0特性(SwipeRefreshLayout)

1,实现效果

  • 实现下来刷新

Android 5.0特性(SwipeRefreshLayout)

 

2,实现效果

【1】添加依赖,导入V7包SwipeRefreshLayout是V4包下的,V7保护我

compile 'com.android.support:appcompat-v7:23.4.0'

添加网络权限

 

【2】把需要展示的内容用SwipeRefreshLayout包裹

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

   xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main"

   android:layout_width="match_parent" android:layout_height="match_parent"

   tools:context="com.itheima.a003swiperefreshlayout.MainActivity">

  <android.support.v4.widget.SwipeRefreshLayout

       android:layout_width="match_parent"

       android:id="@+id/refreshlayout"

       android:layout_height="match_parent">

   <WebView

       android:id="@+id/webview"

       android:layout_width="match_parent"

       android:layout_height="match_parent"/>

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

</RelativeLayout>

 

【3】代码调用

  • 获取控件

  • 设置外观颜色(可以设置多种颜色的转变)

        // refreshlayout.setColorSchemeColors(Color.RED);

        refreshlayout.setColorSchemeColors(Color.RED,Color.GREEN,Color.YELLOW);

  • 设置监听,当松开的时候进行业务逻辑处理

   SwipeRefreshLayout.OnRefreshListener listener=new SwipeRefreshLayout.OnRefreshListener() {

            //松开布局

            @Override

            public void onRefresh() {

                webView.loadUrl("http://www.itheima.com");

            }

        };

        refreshlayout.setOnRefreshListener(listener);
  • 实现代码

public class MainActivity extends AppCompatActivity {





    private WebView webView;

    private SwipeRefreshLayout refreshlayout;





    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        refreshlayout = (SwipeRefreshLayout) findViewById(R.id.refreshlayout);

        //设置外观

        // refreshlayout.setColorSchemeColors(Color.RED);

        refreshlayout.setColorSchemeColors(Color.RED,Color.GREEN,Color.YELLOW);

        SwipeRefreshLayout.OnRefreshListener listener=new SwipeRefreshLayout.OnRefreshListener() {

            //松开布局

            @Override

            public void onRefresh() {

                webView.loadUrl("http://www.itheima.com");

            }

        };

        refreshlayout.setOnRefreshListener(listener);

        webView = (WebView) findViewById(R.id.webview);

        String url="http://www.baidu.com";

        ///设置一个禁止调用系统浏览器的对象

        webView.setWebViewClient(new WebViewClient());

        //WebChromeClient设置 处理页面加载进度

        webView.setWebChromeClient(new WebChromeClient(){

            @Override

            public void onProgressChanged(WebView view, int newProgress) {

                super.onProgressChanged(view, newProgress);

                if (newProgress == 100) {

                    refreshlayout.setRefreshing(false);//关闭刷新

                }

            }

        });

        webView.loadUrl(url);





    }

}