Wikipedia 在 iPad 上以不同方式呈现 WkWebView 和 Safari

Posted

技术标签:

【中文标题】Wikipedia 在 iPad 上以不同方式呈现 WkWebView 和 Safari【英文标题】:Wikipedia renders WkWebView and Safari differently on an iPad 【发布时间】:2019-01-04 19:46:32 【问题描述】:

这个问题是 iPad 特有的。

当我在我的应用程序中使用 WKWebView 时,它的 User Agent 字段与 Safari 发送的相同。但是,***返回给我的应用程序的页面包括标准的***侧边栏。 iPad 上的 Safari 不显示侧边栏。

我希望 WKWebview 的行为与 Safari 相同。我将不胜感激。

【问题讨论】:

【参考方案1】:

您可以使用SFSafariViewController 代替它的行为与Safari 相同

if let url = URL(string: urlString) 
        let config = SFSafariViewController.Configuration()
        config.entersReaderIfAvailable = true

        let vc = SFSafariViewController(url: url, configuration: config)
        present(vc, animated: true)
    

【讨论】:

谢谢你。我已经接受了答案。对于未来的读者,我会指出你不能将这些页面嵌入到你自己的视图中——文档对此很明确,所以你只能按照上面的方式使用它——也就是说,通过转换到网页的全屏视图.视图中有一个“完成”按钮,按下该按钮后,用户将返回到呈现视图。 WKWebView 确实允许嵌入,但正如我所发现的,它在某种程度上与***服务器看起来不同,我还没有弄清楚。

以上是关于Wikipedia 在 iPad 上以不同方式呈现 WkWebView 和 Safari的主要内容,如果未能解决你的问题,请参考以下文章

在不同的占位符/模板上以不同的方式呈现 Django-CMS 插件

Chrome 在设备上以不同的方式呈现基于 em 的字体大小

ipad如何在一个视图上以编程方式创建多个表

如何在 iPad1 iOS SDK 上以编程方式保存视频

在 iPad 上以编程方式添加子视图,硬编码

如何在 iPad 上以编程方式启动 iBooks 电子阅读器?