SwiftUI不借助第三方库在App中保存和加载网页归档文件的极简方法

Posted 大熊猫侯佩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SwiftUI不借助第三方库在App中保存和加载网页归档文件的极简方法相关的知识,希望对你有一定的参考价值。



功能需求

有时,我们希望在App中可以保存指定网页的内容(包括当前页面中的文本、图片、视频快照等)到本地归档文件中,在设备无网络连接的时候也可以供用户浏览和阅读。

如上图所示,我们在不“浏览”原网页的情况下,保存其内容到本地的归档文件里,之后可以随时加载本地文件中的页面“快照”并显示之。即使遇到页面访问超时,我们也可以保存相当完整的页面内容到本地。

在本篇博文中,您将了解到:

  • 如何在SwiftUI中如何显示Web页面的内容
  • 如何保存Web页面内容到本地归档文件里
  • 如何解决Web页面未完全加载时归档的问题
  • 如何将本地归档文件页面的内容重新加载到App中

请系好安全带,我们即将开始浩瀚星海的神奇之旅…



功能分析

0. 如何在SwiftUI中显示网页

“工欲善其事,必先利其器”,不管是网络页面还是本地页面快照,我们都必须先能把它们的内容显示出来。

到目前为止,SwiftUI 3.0都没有原生的视图来显示Web页面,不过从ios 8.0开始,UIKit中就有WKWebView可供使用了:

<

以上是关于SwiftUI不借助第三方库在App中保存和加载网页归档文件的极简方法的主要内容,如果未能解决你的问题,请参考以下文章

iOS 16 修改第三方库实现监听 SwiftUI 中 sheet 弹出视图的下滑关闭动作

iOS 16 修改第三方库实现监听 SwiftUI 中 sheet 弹出视图的下滑关闭动作

SwiftUI不借助ScrollViewReader和ScrollViewProxy实现List自动滚动到底部

SwiftUI不借助ScrollViewReader和ScrollViewProxy实现List自动滚动到底部

在 SwiftUI 列表中重新加载单个行属性

在 SwiftUI 中将加载的 json 文件中的更改保存到 Core Data