- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我的问题不同于this一个人..我希望我的进度对话框在页面加载开始时启动,并在我的 web View 中页面加载完成时结束。我的问题是进度对话框启动并且永远不会被解雇。我设置了断点它表明进度对话框启动并多次被解雇然后它启动并且即使在页面加载完成后也不会被解雇。我的问题是为什么 onPageStarted 会为单个页面加载执行多次?为什么在页面加载完成后不调用 onPageFinished?
myWebView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
myWebView.loadUrl(url);
return true;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(myWebView, url, favicon);
Log.d("mytag","Page Loading Started");
//myURLProgressDialog= ProgressDialog.show(WebviewExampleActivity.this, "Page Loading", "Wait for a moment...");
}
@Override
public void onPageFinished(WebView view, String url) {
Log.d("mytag","Page Loading Finished!");
super.onPageFinished(myWebView, url);
//myURLProgressDialog.dismiss();
}
});
我的自标记过滤日志是这样的,用于加载单个页面:
10-06 10:32:49.298: DEBUG/mytag(508): Page Loading Started
10-06 10:32:49.998: DEBUG/mytag(508): Page Loading Started
10-06 10:32:50.048: DEBUG/mytag(508): Page Loading Finished!
10-06 10:32:50.048: DEBUG/mytag(508): Page Loading Started
10-06 10:33:00.898: DEBUG/mytag(508): Page Loading Finished!
当我在已加载页面上单击链接时,它工作正常。这是日志:
10-06 10:59:25.098: DEBUG/mytag(543): Page Loading Started
10-06 10:59:30.889: DEBUG/mytag(543): Page Loading Finished!
最佳答案
使用.isShowing()
检查它是否已经打开。
final ProgressDialog mProgressDialog = new ProgressDialog(this);
mProgressDialog.setMessage("Loading...");
browser.setWebViewClient(new myViewClient(){
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
if(!mProgressDialog.isShowing())
{
mProgressDialog.show();
}
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
if(mProgressDialog.isShowing()){
mProgressDialog.dismiss();
}
}
});
关于android - onPageStart 被调用多次并且 onPageFinished 没有被单页调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7670364/
我这里遇到了问题。 Eclipse 说我的方法“onPageStarted”从未在本地使用过。 运行应用程序时,会调用“onPageFinished”方法,但根本不会调用“onPageStarted”
我正在使用 WebViewClient。我们是否应该看到 onPageStarted() 回调总是与 shouldOverrideUrlLoading() 回调配对?如果我在我的 WebView 中加
我的问题不同于this一个人..我希望我的进度对话框在页面加载开始时启动,并在我的 web View 中页面加载完成时结束。我的问题是进度对话框启动并且永远不会被解雇。我设置了断点它表明进度对话框启动
我真正想要说明的是,这些方法究竟在什么时候被调用? Android documentation在 WebView 类引用上,它们在页面加载完成 和页面开始加载 时被调用。加载什么 - 加载请求或呈现
我正在尝试在 WebView 启动时完成某种操作,例如加载纺车或 toast 消息... 我所做的会使应用程序崩溃。 (我是 C# 的新手,非常感谢简单的答案)。 public class MainA
我必须在使用具有 OAuth 功能的 Web View 登录的应用程序中实现自定义选项卡。有没有办法在 Chrome 自定义标签中使用与 onPageStart() 和 onPageFinished(
请帮我解答这个问题。我正在使用 WebView 。我遇到了两个问题: 当 webview 加载新页面时。未调用 onPageStarted 方法,但调用了 onPageFinished 方法。 方法
我正在开发一个应用程序,当用户从一个链接导航到另一个链接时,我想更改 edittext 的内容并希望在 edittext 中显示当前 url。 但是这3种方法都不行,连日志都打印不出来。这是代码。
我正在尝试显示一个带有 AdvancedWebView 的 html 文件成分。但问题是,它显示了该行的错误 public class MainActivity extends Activity im
Android Studio 3.5.1 Kotlin 1.3 我有以下方法,我正在尝试进行单元测试。使用 WebView和 WebViewClient 我拥有的方法如下,需要进行单元测试: fun
我需要将一些 JavaScript 注入(inject)到要加载到 WebView 中的网页中,但是在 onPageFinished 处注入(inject)它已经太晚了,而且 onPageStarte
这是我的代码 public class Main extends Activity { @Override public void onCreate(Bundle savedInstanceState
我是一名优秀的程序员,十分优秀!