2014-10-08 61 views
2

我正在使用WKWebView和Swift语言创建一个简单的Web查看器。这是我的代码。获取“线程1:EXC_BAD_ACCESS”错误?

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 
    } 

} 

我现在得到一个“主题1:EXC_BAD_ACCESS”在webView = WKWebView()线错误,当我尝试运行应用程序。我怎样才能解决这个问题?

回答

0

如果这就是您的所有代码,那么我会说您缺少实例化WKWebView。在self.webView!.loadRequest(req)行上放置一个断点,并检查它是否为零。

我从来没有与WKWebView合作过,但我认为你需要一个视图控制器。也许这篇博客可以帮助你:Getting started with WKWebView using Swift in iOS 8

0

你忘了初始化你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) 
+0

谢谢。我修改了我的代码(请参阅上面的编辑代码),但是我现在在初始化行上出现EXC_BAD_ACCESS错误? – user1741348 2014-10-08 18:36:00

+0

@ user1741348尝试 var webView = WKWebView(frame:CGRectMake(0,0,320,480)) – ytbryan 2014-10-08 23:12:48

0

我得到这个错误,每当我尝试用一​​种全新的最小类作为代表。例如:

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

当我尝试使用默认的视图控制器作为代表不会出现这种情况。例如:

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

我会建议使用的视图控制器作为代表直到我们得到的这条底线。