使用WebView恢复Fragment,无需重新加载webview内容

发布于 2025-01-13 07:26:43 字数 595 浏览 2 评论 0原文

我很高兴得知导航库终于从2.4版本开始保存并恢复Fragment状态(发行说明 ),这在底部导航场景中很有用,可以在切换时不完全重建屏幕选项卡。

之前,我会求助于 FragmentNavigator 的一个不太好的子类,它会分离/重新附加片段,以完全保留它,包括滚动位置等。 我非常乐意摆脱这个自定义子类,但我遇到了这个问题:

现在,当切换到包含 WebView 的 Fragment 时(我知道,:disappointed: ),webview 将当我选择包含它的选项卡时重新加载,即使使用 webView.restoreState() (这只会恢复最后加载的网址以及导航历史记录,我相信)

有谁知道如何完全保留 WebView 的状态切换标签时?也就是说,没有进行任何重新加载?

I’m happy to learn that the navigation library finally saves and restores Fragment state since version 2.4 (release notes ), which is useful in a Bottom Navigation scenario to not completely rebuild screens when switching tabs.

Before, I would resort to a not-so-great subclass of FragmentNavigator that would detach / re-attach the Fragments, to retain it completely, including scroll-position etc.
I would be super happy to get rid of this custom subclass, but I ran into this problem:

Now, When switching to a Fragment that contains a WebView (I know, :disappointed: ), the webview will reload when I select the tab that contains it, even when using webView.restoreState() (this will only restore what url was loaded last along with the navigation history, I believe)

Has anyone figured out how to completely retain a WebView ’s state when switching tabs? That is, without any reloading going on?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文