从Swift 2开始,有了一种更清晰的方法来检查某个类或属性是否可用:
@available(iOS 8.0, *)
var someVarHere = someClassHere()然而,我在任何地方都找不到如何检查协议可用性的方法,例如SFSafariViewControllerDelegate。有什么建议吗?
发布于 2016-08-01 20:09:17
多亏了@lu_,我得到了一个解决方案:使用扩展。
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
if #available(iOS 9, *) {
let sfc = SFSafariViewController(URL: NSURL(string: "http://www.google.bg")!)
sfc.delegate = self
presentViewController(sfc, animated: true, completion: nil)
}
}
}
@available(iOS 9, *)
extension ViewController: SFSafariViewControllerDelegate {
func safariViewControllerDidFinish(controller: SFSafariViewController) {
controller.dismissViewControllerAnimated(true, completion: nil)
}
}https://stackoverflow.com/questions/38697854
复制相似问题