8

在我的一个应用程序中,我使用 webview 加载页面,场景是我有 Activity A 和 Activity B,Activity A 显示菜单列表,在选择列表中的任何项目时,它将在 Activity 中打开 Activity B BI 正在执行所有与 webview 相关的活动,例如使用 URL 加载 webview,但它需要花费大量时间来显示该页面,我的问题是无论如何我可以在活动 A 中预加载 webview 并将其传递给 B 以立即加载。

如果可以在 Activity A 中预加载 webview 并将其传递给 Activity B 以立即渲染,请告诉我它是如何实现的?

注意:我可以在 Activity A 中使用进度对话框,直到 webview 加载(等到 onPageFinished)被调用并启动 Activity B,但是我怎样才能在此处立即加载 webview?

4

2 回答 2

4

您不能以任何方式在活动之间共享传输视图。所以你应该停留在单一的活动中(你可以使用片段来组织你的视图)。创建 webview,隐藏它,开始加载数据。加载数据时显示 webview。

PS 您可以手动下载 html 源代码和/或一些资源,以便稍后与 webview 一起使用......但这可能很棘手。

于 2013-02-22T08:48:49.927 回答
0

您不能在活动之间共享视图,但根据您从 url 加载的页面类型,您可以将 html 缓存到 sd 卡上的文件中,然后从该文件加载活动 B 中的 WebView。

于 2013-02-22T09:58:17.047 回答