Home
> Tricks & Tips > Load WebView with ProgressDialog
Load WebView with ProgressDialog
It’s very useful to determine the status while loading a web page. Here a sample to show ProgressDialog to track when WebVIew done with loading URL.
public class MainActivity extends Activity { WebView mWeb; ProgressDialog mProgress; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // no need to use title bar requestWindowFeature(Window.FEATURE_NO_TITLE); // set webview as main content only mWeb = new WebView(this); setContentView(mWeb); // set Javascript WebSettings settings = mWeb.getSettings(); settings.setJavaScriptEnabled(true); // the init state of progress dialog mProgress = ProgressDialog.show(this, "Loading", "Please wait for a moment..."); // add a WebViewClient for WebView, which actually handles loading data from web mWeb.setWebViewClient(new WebViewClient() { // load url public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } // when finish loading page public void onPageFinished(WebView view, String url) { if(mProgress.isShowing()) { mProgress.dismiss(); } } }); // set url for webview to load mWeb.loadUrl("http://www.cnn.com"); } }
Hope it helps!
Cheers,
Pete Houston
Categories: Tricks & Tips
finish, load, progressdialog, url, web, webview
This is what im looking for.
florist jakarta
Worked like charm…thanks
toko bunga bandung
Worked fine! Thanks!
change color ProgressDialog?
Thanks a lot! it works well! 🙂
Thanks!That was a really good way to load a web view!!!!
This is great, but what about when a user clicks on a link inside webview. How do you show a ProgressDialog every time someone clicks on a link inside the web view? This only shows on the first load. I’m pulling my hair out trying to figure this out!
have you found the solution yet ??
Yes,
I have found a solution.
Add “mProgress.show();” into the shouldOverrideUrlLoading() function above view.loadUrl(url);
Thanks mate!