我正在使用以下代码
class CustomWebViewClient extends WebViewClient {
Context context;
ProgressDialog pd = null;
public CustomWebViewClient (Context c){
context = c;
}
public void onPageFinished(WebView view, String url){
pd.dismiss();
}
public boolean shouldOverrideUrlLoading(final WebView view, final String url) {
pd = ProgressDialog.show(context, "", "pageload. Please wait...", true);
view.loadUrl(url);
return true;
}
}
当我单击 WebView 中的链接时,会出现对话框并开始加载页面,但是当页面加载完成后,对话框仍显示在屏幕上。显然代码很简单,但我无法弄清楚。另外,我想我应该补充一点,所单击的链接有一些重定向,但我不确定这是否与此处的原因有关。
我怎样才能正确地做到这一点?
Steven & Sander,尝试关闭处理程序中的进度对话框
像这样的事情:
class pdHandler extends Handler {
@Override
public void handleMessage(Message msg) {
if(pd != null)
{
pd.dismiss();
pd = null;
}
}
然后在 onPageFinished 中调用您的处理程序:
public void onPageFinshed(WebView view, String url){
pdHandler.sendEmptyMessage(0);
}
&你完成了!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)