UIWebView - 在显示时转储HTML

时间:2017-09-19 03:09:45

标签: ios uiwebview

在我的应用中,我在webview中显示远程内容。 出于测试目的,我需要这些页面是静态的,作为本地文件存储在bundle中。

问题是HTML正文不足以正确显示页面。随着给定文档提取外部资源和脚本。

我的问题是我可以“按原样”转储显示的页面,其中已经应用了格式,功能链接等吗? 如果是这样,怎么样?

1 个答案:

答案 0 :(得分:0)

HTML转储不是iOS的内置功能,而且绝对不是UIWebView的内置功能。 UIWebView纯粹是为了向最终用户显示Web视图。

这方面的一个解决方法非常简单,可能不足以满足您以后的代码段:

int max1 = string.Concat(list).Split('0').Max().Length;

int max2 = list.Aggregate(new int[2], (a, i) => new[]{Math.Max(a[0], a[1]+i), ++a[1]*i})[0];

int max3 = list.Aggregate(new int[2], (a, i) => { a[1] = ++a[1] * i; a[0] = a.Max(); return a; })[0];

更深入的解决方案是利用为您执行此操作的API或创建自己的API来处理此问题。一个现成的解决方案是Symfony

<强>更新

问题的提问者澄清说他是在使用离线浏览器功能,而不是倾销功能。

有一个名为Mattress(https://github.com/buzzfeed/mattress)的库可以自动为您处理,只需最少的设置。要在Webtress磁盘缓存中缓存webPage,只需调用URLCache的diskCacheURL:loadedHandler:方法。