在Swift中的浏览器中打开Web URL链接

时间:2018-06-27 17:59:29

标签: ios iphone swift swift2

我想加载通过Web服务获取的链接的网页。我已经尝试过自己,但结果并不令人满意。

我从服务器获取了这样的网址: http://www.simrishamn.se/sv/kultur_fritid/osterlens_museum/

我也使用了这种类型的代码来加载页面:

let url = URL(string: "http://" + urlSting.addingPercentEncoding(withAllowedCharacters: .urlHostAllowed)!)
UIApplication.shared.openURL(url!)

但是当我在设备中测试此代码时,其显示如下:

enter image description here

请提供一些帮助来加载获取的网址。

编辑: 完成建议的更改后,尽管按钮单击事件仍在起作用,但未打开Web浏览器,请检查下图以获得更多间隙:

enter image description here

2 个答案:

答案 0 :(得分:2)

您需要检查

喜欢

if let url = URL(string: urlSting.addingPercentEncoding(withAllowedCharacters: .urlHostAllowed)!), UIApplication.shared.canOpenURL(url) {
    UIApplication.shared.openURL(url!)
}

还请检查删除添加https://前缀 和 如果不行,那就干脆

if let url = URL(string: urlSting), UIApplication.shared.canOpenURL(url) {
    UIApplication.shared.openURL(url)
}

答案 1 :(得分:0)

请尝试这个。

if let url = URL(string: urlString), UIApplication.shared.canOpenURL(url) {
   if #available(iOS 10.0, *) {
      UIApplication.shared.open(url, options: [:], completionHandler: nil)
   } else {                                            
      UIApplication.shared.openURL(url)
   }
}