故事板/Swift所有IBOutlet和_视图均为零

故事板/Swift所有IBOutlet和_视图均为零,swift,interface-builder,Swift,Interface Builder,我正在开发一个Swift应用程序,遇到了一个奇怪的问题。我有一个简单的故事板视图控制器设置,它有3个ui按钮aui图像视图和一个ui视图(作为主视图的子视图) 我想以编程方式将WKWebView添加到UIView 很简单,对吧?以上所有内容都在脚本视图中,在自定义UIViewController类中声明,并在IB中连接。但是在运行时,所有内容都为零。这是我的代码片段: @IBOutlet var button1 : UIButton!; @IBOutlet var button2 : UIBut

我正在开发一个Swift应用程序,遇到了一个奇怪的问题。我有一个简单的故事板视图控制器设置,它有3个
ui按钮
a
ui图像视图
和一个
ui视图
(作为主视图的子视图)

我想以编程方式将
WKWebView
添加到
UIView

很简单,对吧?以上所有内容都在脚本视图中,在自定义
UIViewController
类中声明,并在IB中连接。但是在运行时,所有内容都为零。这是我的代码片段:

@IBOutlet var button1 : UIButton!;
@IBOutlet var button2 : UIButton!;
@IBOutlet var button3 : UIButton!;

@IBOutlet weak var containerForWebView: UIView!

var webView: WKWebView!

override func loadView()
{

}


override func viewDidLoad()
{
    super.viewDidLoad()

    displayWebPage()
}

override func viewWillAppear(_ animated: Bool)
{
    super.viewWillAppear(animated)


}

override func viewDidLayoutSubviews()
{
    super.viewDidLayoutSubviews()

}

private func displayWebPage()
{

    webView = WKWebView()
    webView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
    webView.frame = CGRect(origin: CGPoint.zero, size: containerForWebView.frame.size)
    webView.navigationDelegate = self

    containerForWebView.addSubview(webView)
    let url = URL(string: "https://www.google.com")!
    webView.load(URLRequest(url: url))
}
当代码调用
displayWebPage()
方法时,我在第一行中断。在调试器中,您可以看到所有
UIViewController
属性均为nil。IBOutlets为Nil,
UIViewController
本身的_view变量为Nil

我不明白为什么会这样。一切都很简单,很容易连接。我从未在Objective-C中遇到过此类问题。任何建议都将不胜感激


删除
loadView
实现。不要重写该方法,请始终使用
viewDidLoad


如果覆盖
loadView
,则您负责创建控制器的视图并将其分配给
self.view

HomeViewController是根视图控制器吗?是否在appdelegate中设置了根视图控制器?这是否导致崩溃?我检查了我的,它也是0x0,但在运行时没有问题神圣的鳄梨酱!这就是为什么在你精疲力竭的深夜编码并不总是最好的主意。是的,就是这样,完全有道理。通过重写该方法而不调用超级方法,就没有视图。去掉这个,问题就解决了。谢谢