SFSafariViewController

SFSafariViewController 也是iOS9之后,苹果推出的新功能,这个框架使用起来相对比UIWebView简单一些。但是目前感觉仅适用于简单操作,因为SFSafariViewController只提供了两个实例化方法,两个delegate方法。
接下来我们简单看下如何使用这个新框架吧。
首先需要包含框架
[code lang=”Objective-C”]import SafariServices[/code]
其次就是实例化,并跳入到控制器
[code lang=”Objective-C”]// entersReaderIfAvailable参数是是否可以调用阅读模式
let safarivc = SFSafariViewController(URL: NSURL(string: “http://www.baidu.com”)!, entersReaderIfAvailable: true)
self.presentViewController(safarivc, animated: true, completion: nil)[/code]
接下来实现SFSafariViewControllerDelegate
[code lang=”Objective-C”]// 此方式是打开safari加载网页完成之后的方法,打印结果显示是否加载成功
func safariViewController(controller: SFSafariViewController, didCompleteInitialLoad didLoadSuccessfully: Bool) {
print(“\(didLoadSuccessfully)”)
}
// 点击完成后调用此方法
func safariViewControllerDidFinish(controller: SFSafariViewController) {
print(“back”)
}
// 点击分享按钮就能拦截到此方法,在这里可以自定义分享里面的按钮
func safariViewController(controller: SFSafariViewController, activityItemsForURL URL: NSURL, title: String?) -> [UIActivity] {

print(“\(URL),\(title)”)

let ac = UIActivity()
return [ac]
}[/code]
以上就是SFSafariViewController 控制器的简单集成