SFSafariViewController 在推入 UINavigationController 时隐藏网络活动指示器

Posted

技术标签:

【中文标题】SFSafariViewController 在推入 UINavigationController 时隐藏网络活动指示器【英文标题】:SFSafariViewController hides network activity indicator when pushed in a UINavigationController 【发布时间】:2015-09-28 17:02:37 【问题描述】:

SFSafariViewController 正在加载时,我们需要向用户指示一个网站正在我们刚刚推送的 ViewController 中加载。

最简单的想法是在推送新的 SFSafariViewController 之前打开网络活动指示器,并在我们知道网站已加载后在委托方法中将其关闭。然而。当SFSafariViewController在UINavigationController中滑动时,它会在应用程序上滑动,这很好,但是网络活动指示器不再打开了。

没有可见的网络活动指示器,因此我们无法向用户传达正在加载网站的信息。我们需要一种方法来向用户传达一个网站正在被 SFSafariViewController 加载。

我认为这是一个错误! iOS 9.

如果有人遇到同样的问题,请告诉我如何解决。

【问题讨论】:

【参考方案1】:

SFSafariViewController 中的进度视图是用户知道网站正在加载并且已经内置的指示器,为什么还需要另一个?如果由于您正在推送而隐藏了进度视图,请将此行添加到您的代码中,以便隐藏导航栏: self.navigationController.navigationBarHidden = YES;

【讨论】:

以上是关于SFSafariViewController 在推入 UINavigationController 时隐藏网络活动指示器的主要内容,如果未能解决你的问题,请参考以下文章

使用 SFSafariViewController 的主要优势是啥?

如何在 SwiftUI 中使用 SFSafariViewController?

SFSafariViewController 显示任何 URL 的空白屏幕

SFSafariViewController 关闭后的背景音频

检测 SFSafariViewController 中的 URL 更改

FBSDK 登录 - SFSafariViewController 已禁用?