Swift - 在app中打开网页,按钮没有反应

DCD*_*CDC 19 uibutton ios swift

我创建了一个按钮,可以通过app拨打电话:

   @IBAction func callButton(sender: AnyObject) {
    if (PhoneNumber != ""){
    UIApplication.sharedApplication().openURL(NSURL(string: "telprompt://\(PhoneNumber)")!)
    }
}
Run Code Online (Sandbox Code Playgroud)

它完美无缺.当我想打开一个网页时,会发生奇怪的事情.我使用几乎完全相同的代码

    @IBAction func openWeb(sender: AnyObject) {
    UIApplication.sharedApplication().openURL(NSURL(string: "www.google.com")!)
}
Run Code Online (Sandbox Code Playgroud)

但这个时间按钮没有反应,没有任何反应.无论我在哪里寻找有关通过应用程序在safari中打开网页的一些信息,代码都是用这种方式编写的.你知道问题出在哪里吗?

提前致谢!

eli*_*o.d 56

丢失网址方案

UIApplication.shared.open(URL(string: "http://www.google.com")!, options: [:], completionHandler: nil)
Run Code Online (Sandbox Code Playgroud)


Aar*_*sen 14

Swift 4,安全解包可选,检查是否canOpenURL

if let url = URL(string: "https://www.google.com"),
        UIApplication.shared.canOpenURL(url) {
            UIApplication.shared.open(url, options: [:])
}
Run Code Online (Sandbox Code Playgroud)


MrM*_*ins 7

Swift 3版

UIApplication.shared.openURL(NSURL(string: "http://google.com")! as URL)
Run Code Online (Sandbox Code Playgroud)

  • 如果您需要更安全的方法,请在进行openURL调用之前进行检查 - > UIApplication.shared.canOpenURL(url) (3认同)