1

Android 2.2 和 3.1 上的 WebView 类有什么不同的行为吗?

这里有一些信息,我在两个不同的设备上测试了同一个应用程序,第一个是 Android 2.2,另一个是 3.1

  • 该应用程序的目标是 2.1
  • 我要访问的页面是 ASP.net 页面

在 2.2 上运行

  • shouldOverrideUrlLoading 正常调用
  • onPageStarted 和 onPageFinished 被多次调用
  • 当页面结束加载时,来自 webview 的 onNewPicture 被调用一次

在 3.1 上运行

  • shouldOverrideUrlLoading 没有被调用,只有 webView.load(url) 足以做同样的工作
  • onPageStarted 和 onPageFinished 被调用一次
  • 来自 webview 的 onNewPicture 未被调用

我的问题是。我需要在页面加载时显示一个对话框,但我不知道如何处理这些差异。

如果我在 onPageStarted 上创建对话框并在 onPageFinished 上关闭它,它将在 2.2 上显示和关闭不止一次,但在 3.1 上它会正常工作

否则,如果我在 shouldOverrideUrlLoading 上创建对话框并在 onNewPicture 上关闭它,它将在 2.2 上正常工作,但在 3.1 上它甚至不会出现。

4

1 回答 1

1

我使用了以下内容:

Android WebView 进度条

要在加载时在 webview 上放置进度条,您可以实现相同的方法,当加载的百分比小于 100% 时显示视图,并在加载百分比为 100% 时将其关闭。我为 Android >= 3.0 类型的设备实现了这个。

于 2012-06-11T18:57:51.140 回答