xcode和swift中URL webview的EXC_BAD_指令(代码=EXC_I386_INVOP,子代码=0x0)错误
我是xcode和Swift的新手,我遇到了一个错误 EXC_BAD_指令(代码=EXC_I386_INVOP,子代码=0x0) 我试着在stackoverflow上搜索类似的问题,我看到人们的回答是,这是因为url无效,所以返回xcode和swift中URL webview的EXC_BAD_指令(代码=EXC_I386_INVOP,子代码=0x0)错误,swift,xcode,url,webview,null,Swift,Xcode,Url,Webview,Null,我是xcode和Swift的新手,我遇到了一个错误 EXC_BAD_指令(代码=EXC_I386_INVOP,子代码=0x0) 我试着在stackoverflow上搜索类似的问题,我看到人们的回答是,这是因为url无效,所以返回nil。然而,我正在使用,我仍然得到相同的错误。到目前为止,这是我所有的代码。我只尝试将单个网页加载到视图控制器中 import UIKit class ViewController: UIViewController { @IBOutlet weak var myW
nil
。然而,我正在使用,我仍然得到相同的错误。到目前为止,这是我所有的代码。我只尝试将单个网页加载到视图控制器中
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var myWebView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let url = URL(string: "https://www.google.com")
myWebView.loadRequest(URLRequest(url: url!))
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
看起来您的插座连接不正确,并且始终避免强行展开。为了防止崩溃,您可以使用以下检查:- 或
在查看了有关错误的各种文档和视频后,我发现问题在于,我在viewController的错误文件中编写了代码,因为我所针对的viewController是我创建的第二个,可以从原始的viewController访问。因此,对于任何一个全新开发的人来说,xcode和swift都是如此。原始viewController.swift文件仅适用于第一个viewController。必须创建一个新的viewController.swift文件,以便向随后创建的任何viewController添加代码。当出现一些运行时错误时,应检查控制台输出。您可能会发现致命错误:意外发现零…,这是由
指示的强制展开引起的代码>。如果url代码>不是这样,那么myWebView:UIWebView代码>。检查Interface Builder中是否确实连接了myWebView
。无论如何,你可以找到很多很多讨论相同情况的文章,其中一些包括如何调试。是的,我在控制台中看到了nil错误,我一直在检查各种文档,了解我在整个过程中发现的错误。很高兴听到你解决了它。但你的解决方案更适合作为答案。我将我的解决方案作为答案重新发布。我也是stackoverflow的新手,所以我不知道把它放在哪里。你仍然看到了崩溃??
guard let url = URL(string: "https://www.google.com") else { return }
myWebView.loadRequest(URLRequest(url: url))
if let url = URL(string: "https://www.google.com") {
myWebView.loadRequest(URLRequest(url: url))
}