我正在使用SFSafariViewController显示应用程序相关的信息(例如,关于,支持,T&C)从网站通过设置视图。
在“设置”视图中,有一个带有静态单元格的表。在“设置视图控制器”中实现以下代码后,将显示一个类似于Safari浏览器的视图,并正确加载提供的URL。
let url = URL(string: "https://google.com.au")
let svc = SFSafariViewController(url: url!)
self.present(svc, animated: true, completion: nil)但是,我没有为导航栏中的“完成”按钮指定操作。但是,当Safari浏览器被点击时,它仍然不支持它。
问题
基于这里的教程,我需要实现SFSafariViewControllerDelegate协议来取消视图控制器。
我在苹果的文档中搜索了一些信息,但是找不到关于“完成”按钮的默认行为的任何信息。
发布于 2017-10-22 01:48:39
如果您看到optional func safariViewControllerDidFinish(_ controller: SFSafariViewController)委托方法的文档,说明如下:
你可以在这里进行任何必要的清理。视图控制器随后被解职。
考虑到done按钮在没有在描述中添加委托和The view controller is dismissed afterwards.文本的情况下工作,我想说,如果您对默认的完成行为感到满意,那么可以假设您不需要实现委托。
更重要的是,委托方法本身是可选的,这也表明您不需要实现该方法。
https://stackoverflow.com/questions/46869338
复制相似问题