
我正在使用swift对应用程序进行编码,并且已经看到了Objective-c的一些答案,但没有看到swift的答案.
有谁知道我该怎么做呢?
解决方法 这在Swift和Obj-C中完全相同:首先,声明您的视图控制器符合uiwebviewdelegate
class MyVIEwController: uiwebviewdelegate
然后在VIEw Controller中实现webViewShouldStartLoadingWithRequest:navigationType::
// Swift 1 & 2func webVIEw(webVIEw: UIWebVIEw,shouldStartLoaDWithRequest request: NSURLRequest,navigationType: UIWebVIEwNavigationType) -> Bool { switch navigationType { case .linkClicked: // Open links in Safari UIApplication.sharedApplication().openURL(request.URL) return false default: // Handle other navigation types... return true }}// Swift 3func webVIEw(_ webVIEw: UIWebVIEw,shouldStartLoaDWith request: URLRequest,navigationType: UIWebVIEwNavigationType) -> Bool { switch navigationType { case .linkClicked: // Open links in Safari guard let url = request.url else { return true } if #available(iOS 10.0,*) { UIApplication.shared.open(url,options: [:],completionHandler: nil) } else { // openURL(_:) is deprecated in iOS 10+. UIApplication.shared.openURL(url) } return false default: // Handle other navigation types... return true }} 最后,设置UIWebVIEw的委托,例如,在vIEwDIDLoad或Storyboard中:
webVIEw.delegate = self总结
以上是内存溢出为你收集整理的ios – 如何在Xcode的Safari中打开webview中的任何链接?全部内容,希望文章能够帮你解决ios – 如何在Xcode的Safari中打开webview中的任何链接?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)