2017-07-26 63 views
0

我是新來的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. 
} 


} 
+1

當出現一些運行時錯誤時,您應該檢查控制檯輸出。您可能會發現**致命錯誤:意外地發現無... **,這是由'!'指示的強制解包造成的。如果'url!'不是這種情況,那麼'myWebView:UIWebView!'。檢查'myWebView'是否確實在Interface Builder中連接。無論如何,你可以找到很多很多文章討論相同的情況,其中一些包括_how to debug_。 – OOPer

+0

是的,我在控制檯中看到了nil錯誤,我一直在檢查我在整個過程中發現的錯誤的各種文檔。 –

+0

很高興聽到你解決它。但是你的解決方案會更好地解決問題。 – OOPer

回答

0

看起來你的插座沒有正確連接,也總是試圖避免做強制解包。爲了防止你的崩潰,你可以使用支票下面: -

guard let url = URL(string: "https://www.google.com") else { return } 
myWebView.loadRequest(URLRequest(url: url)) 

​​
+0

不幸的是,也沒有工作 –

+0

你仍然看到了崩潰? –

1

看在錯誤的各種文檔和視頻,我發現這個問題是我在寫我的代碼後在viewController的錯誤文件中,我所針對的viewController是我創建的第二個從原始文件訪問的文件。因此,對於任何人來說,完全是新的開發和xcode和迅速。原始的viewController.swift文件僅用於第一個viewController。必須創建一個新的viewController.swift文件,以將代碼添加到隨後創建的任何視圖控制器。

相關問題