当我尝试推动Safari ViewController时,会发生2件奇怪的事情:
我不认为苹果会赞同这种行为,所以:
有没有办法在没有这些问题的情况下推动Safari ViewController?
发布于 2016-11-07 08:17:31
不要使用SFSafariViewController方法推动pushViewController:animated:,而是使用presentViewController:animated:completion:方法。
Safari视图控制器将提供一个标准的推送动画。
发布于 2016-03-11 12:36:26
除了rckoenes注释外,我看到的唯一其他选项是在显示SFSafariViewController时隐藏导航栏。
import UIKit
import SafariServices
class ViewController: UIViewController {
@IBAction func openBrowser(sender: AnyObject) {
let safariViewController = SFSafariViewController(URL: NSURL(string: "http://your.url")!)
safariViewController.delegate = self
// hide navigation bar and present safari view controller
navigationController?.navigationBarHidden = true
navigationController?.pushViewController(safariViewController, animated: true)
}
}
extension ViewController: SFSafariViewControllerDelegate {
func safariViewControllerDidFinish(controller: SFSafariViewController) {
// pop safari view controller and display navigation bar again
navigationController?.popViewControllerAnimated(true)
navigationController?.navigationBarHidden = false
}
}https://stackoverflow.com/questions/32604411
复制相似问题