Spinner 不会在 webview 加载时消失 - android

Spinner wont dissapear on webview load - android

我正在尝试将进度微调器(在 andorid 中)设置为在 webview 加载后消失,但根本无法使其工作,微调器使用 onPageStarted 出现但使用 onPageFinished 不消失有人知道吗我做错了吗?

public class MainActivity extends AppCompatActivity {

    private WebView mWebView;

    private ProgressBar spinner;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mWebView = (WebView) findViewById(R.id.activity_main_webview);

        spinner = (ProgressBar)findViewById(R.id.progressBar1);

        //spinner.setVisibility(WebView.VISIBLE);

        // Enable Setup Webview
        // WebView myWebView = (WebView) findViewById(R.id.myWebView);
         mWebView.loadUrl("https://google.com");
        // myWebView.setWebViewClient(new MyWebViewClient());

        mWebView.setWebViewClient(new WebViewClient() {
            public void onPageStarted(WebView view, String url) {
                spinner.setVisibility(WebView.VISIBLE);
            }
            public void onPageFinished(WebView view, String url) {
                // do your stuff here
                spinner.setVisibility(WebView.GONE);
            }
        });

        // Enable Javascript
        WebSettings webSettings = mWebView.getSettings();
        webSettings.setJavaScriptEnabled(true);

        // Force links and redirects to open in the WebView instead of in a browser
        mWebView.setWebViewClient(new WebViewClient());
    }

您正在覆盖旧的 webViewClient。

// 去掉这个,因为你已经在上面设置了一个负责显示和隐藏进度条的。

mWebView.setWebViewClient(new WebViewClient());