EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子码=为0x0)错误Xcode的URL网页视图,并迅速
我是新来的Xcode和斯威夫特,我得到一个错误EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子码=为0x0)错误Xcode的URL网页视图,并迅速
EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
我试着在搜索类似的问题stackoverflow和我看到人们的反应是,这是因为该网址无效,所以它返回nil
。但是,我正在使用https://google.com,而且我仍然收到相同的错误。这是我所有的代码。我只是试图加载一个网页到视图控制器。
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.
}
}
看起来你的插座没有正确连接,也总是试图避免做强制解包。为了防止你的崩溃,你可以使用支票下面: -
guard let url = URL(string: "https://www.google.com") else { return } myWebView.loadRequest(URLRequest(url: url))
或
不幸的是,也没有工作 –
你仍然看到了崩溃? –
看在错误的各种文档和视频,我发现这个问题是我在写我的代码后在viewController的错误文件中,我所针对的viewController是我创建的第二个从原始文件访问的文件。因此,对于任何人来说,完全是新的开发和xcode和迅速。原始的viewController.swift文件仅用于第一个viewController。必须创建一个新的viewController.swift文件,以将代码添加到随后创建的任何视图控制器。
当出现一些运行时错误时,您应该检查控制台输出。您可能会发现**致命错误:意外地发现无... **,这是由'!'指示的强制解包造成的。如果'url!'不是这种情况,那么'myWebView:UIWebView!'。检查'myWebView'是否确实在Interface Builder中连接。无论如何,你可以找到很多很多文章讨论相同的情况,其中一些包括_how to debug_。 – OOPer
是的,我在控制台中看到了nil错误,我一直在检查我在整个过程中发现的错误的各种文档。 –
很高兴听到你解决它。但是你的解决方案会更好地解决问题。 – OOPer