收到“线程 1:EXC_BAD_ACCESS”错误?

Posted

技术标签:

【中文标题】收到“线程 1:EXC_BAD_ACCESS”错误?【英文标题】:Getting "Thread 1:EXC_BAD_ACCESS" error? 【发布时间】:2014-10-08 09:03:08 【问题描述】:

我正在使用 WKWebView 和 Swift 语言创建一个简单的 Web 查看器。这是我的代码。

import Cocoa
import WebKit

@NSApplicationMain class AppDelegate: NSObject, NSApplicationDelegate 

    @IBOutlet var containerView : NSView! = nil
    @IBOutlet weak var window: NSWindow!


    func applicationDidFinishLaunching(aNotification: NSNotification) 
        // Insert code here to initialize your application
        var webView: WKWebView

        webView = WKWebView() //Thread 1:EXC_BAD_ACCESS (code=1,address=0x20)
        var url = NSURL(string:"http://www.google.com/")
        var req = NSURLRequest(URL: url!)
        webView.loadRequest(req)
    

    func applicationWillTerminate(aNotification: NSNotification) 
        // Insert code here to tear down your application
    


当我尝试运行应用程序时,我现在在 webView = WKWebView() 行上收到“线程 1:EXC_BAD_ACCESS”错误。我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

如果这就是您的全部代码,那么我会说您缺少实例化WKWebView。在self.webView!.loadRequest(req) 行下断点,检查是否为nil。

我从未使用过WKWebView,但我认为您需要一个视图控制器。或许这篇博文可以帮到你:Getting started with WKWebView using Swift in ios 8

【讨论】:

【参考方案2】:

你忘记初始化你的 WKWebView

var webView = WKWebView(frame: CGRectMake(0, 0, 320, 480))
var url = NSURL(string:"http://www.google.com/")
var req = NSURLRequest(URL: url)
webView.loadRequest(req)

【讨论】:

谢谢。我已经修改了我的代码(参见上面的编辑代码),但我现在在初始化行出现 EXC_BAD_ACCESS 错误? @user1741348 试试 var webView = WKWebView(frame: CGRectMake(0, 0, 320, 480))【参考方案3】:

每当我尝试使用全新的最小类作为委托时,我都会收到此错误。例如:

class MyDelegate: NSObject, UIWebViewDelegate /* ... */

当我尝试使用默认 ViewController 作为委托时,不会发生这种情况。例如:

class ViewController: UIViewController, UIWebViewDelegate /* ... */

我建议使用 ViewController 作为委托,直到我们深入了解这一点。

【讨论】:

以上是关于收到“线程 1:EXC_BAD_ACCESS”错误?的主要内容,如果未能解决你的问题,请参考以下文章

线程 1:EXC_BAD_ACCESS(代码=1,地址=0x0)错误

UICollectionView 崩溃并出现错误:线程 1:EXC_BAD_ACCESS

代码错误:线程 1:EXC_BAD_ACCESS(代码=1,地址=0x0)

错误:“线程 1:EXC_BAD_ACCESS(代码=EXC_I386_GPFLT)

iOS 上的 Flutter 插件抛出错误“线程 1:EXC_BAD_ACCESS”

得到奇怪的线程1:EXC_BAD_ACCESS(代码= 1,地址= 0x9)swift中的崩溃错误