2016-07-18 6 views
0

のロード後ProgressDialogを解任することができませんあなたは以下のようにこのような何かを行うことができ、コードアンドロイド:WebViewのはここ</p> <p>をロードした後、進行状況ダイアログを閉じることができないのWebView

webview.setWebViewClient(new WebViewClient() { 

      public boolean shouldOverrideUrlLoading(WebView view, String url) { 
       view.loadUrl(url); 
       return true; 
      } 
      public void onLoadResource (WebView view, String url) { 
       if (progressDialog == null) { 
        progressDialog = new ProgressDialog(activity); 
        progressDialog.setMessage("Chargement en cours"); 
        progressDialog.show(); 
       } 
      } 
      public void onPageFinished(WebView view, String url) { 
       if (progressDialog.isShowing()) { 
        progressDialog.dismiss(); 
        progressDialog = null; 
       } 
      } 
     }); 
webview.loadUrl("http://www.someexample.com"); 

答えて

0

は次のとおりです。

public void onPageFinished(WebView view, String url) { 
     progressDialog.dismiss(); 
    } 
0

のような進捗ダイアログを作成します。
ProgressDialog progressDialog= ProgressDialog.show(this, "", "Loading...",true); 

onPageFinished

public void onPageFinished(WebView view, String url) { 
    if (progressDialog != null) 
     if (progressDialog.isShowing()) 
      progressDialog.dismiss(); 
} 
1

よう

webview.setWebViewClient(new WebViewClient() { 

    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) {    
     view.loadUrl(url); 
     return true; 
    } 
    @Override 
    public void onLoadResource (WebView view, String url) { 
     if (progressDialog == null) { 
      progressDialog = new ProgressDialog(activity); 
      progressDialog.setMessage("Chargement en cours"); 
      progressDialog.show(); 
     } 
    } 
    @Override 
    public void onPageFinished(WebView view, String url) { 
     if (progressDialog.isShowing()) { 
      progressDialog.dismiss(); 
      progressDialog = null; 
     } 
    } 
}); 

webview.loadUrl( "http://www.someexample.com")のすべての機能をオーバーライドしてみてくださいすること。

0

それが動作しますこれを試してみてください

protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
      webview = (WebView) findViewById(R.id.activity_main_webview); 
      WebSettings webSettings = webview.getSettings(); 
      webSettings.setJavaScriptEnabled(true); 

      webview.loadUrl("https://someexample.com"); 
      webview.setWebViewClient(new WebViewClient() { 


       public void onLoadResource (WebView view, String url) { 
        if (progressDialog == null) { 
         progressDialog = new ProgressDialog(MainActivity.this); 
         progressDialog.setMessage("Chargement en cours"); 
         progressDialog.show(); 
        } 
       } 

       public void onPageFinished(WebView view, String url) { 

        progressDialog.dismiss(); 
        //hide loading image 
        // findViewById(R.id.progressBar1).setVisibility(View.GONE); 
        //show webview 
        findViewById(R.id.activity_main_webview).setVisibility(View.VISIBLE); 
       } 
      }); 
     } 
    } 
関連する問題