我想使用safari视图控制器。 我的Xcode项目针对iOS 9。 令人惊讶的是,在编译我的代码时,我得到以下编译错误,该错误建议使Safari 8.1控制器兼容,尽管它是在iOS 9中引入的!
Protocol 'SFSafariViewControllerDelegate' requires 'safariViewControllerDidFinish' to be available on iOS 8.1.0 and newer
对此有什么想法吗?
答案 0 :(得分:2)
这是你的修复(在Swift 2.0中):
@available(iOS 9.0, *)
extension YourlViewController: SFSafariViewControllerDelegate {
func safariViewControllerDidFinish(controller: SFSafariViewController){
self.delegate?.onHtmlViewControlClosed(self)
}
}
并将SFSafariViewController.delegate设置为YourViewController。
答案 1 :(得分:-1)
错误消息告诉您需要在safariViewControllerDidFinish
中实施SFSafariViewControllerDelegate
方法。你是正确的,在iOS 9中引入了SFSafariViewControllerDelegate
。这不是要求iOS 8.1兼容性。