页面加载完成后停止刷新

Stop refreshing when page finishes loading

我正在寻求帮助,问题是刷新图标在页面完全加载之前就消失了。

这是代码,在此先感谢:

final SwipeRefreshLayout swipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipelayout);
        final WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
        swipeRefreshLayout.setColorSchemeResources(R.color.refresh,R.color.refresh1,R.color.refresh2);
        swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                mWebView.reload();
                swipeRefreshLayout.setRefreshing(true);
                (new Handler()).postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        mWebView.stopLoading();
                        swipeRefreshLayout.setRefreshing(false);





                    }
                },150000);

150000 是它持续出现在屏幕上的时间量,我尝试将其删除,但以下覆盖代码被弄乱了up.I我是初学者,如果解决方案很简单,很抱歉。

据我了解你的问题,你想通过 SwipeRefreshLayout 刷新 web-page 并显示加载,直到整个页面完成加载。

为此删除这个

(new Handler()).postDelayed(new Runnable() {
                @Override
                public void run() {
                    mWebView.stopLoading();
                    swipeRefreshLayout.setRefreshing(false);





                }
            },150000);

您将在 15 秒后自行停止加载页面,这不是必需的。

改为执行以下操作

mWebView.setWebViewClient(new WebViewClient() {
        public void onPageFinished(WebView view, String url) {
            swipeRefreshLayout.setRefreshing(false);
        }
    });

注意:设置 WebViewClient 以在页面加载完成时知道一个事件。

希望这对你有用!