在 IB 中将 Class 分配给 VC 会导致黑屏

Assigning a Class to a VC in IB results in black screen

我是编码新手,但我不认为这是菜鸟错误,因为它是如此简单。

我设计了一个VC,嵌入在导航控制器中,每次我都会从'Welcome'VC转到这个'Register'VC模拟器中显示的是导航栏和黑屏。在从 'RegisterVC' class 代码文件中慢慢删除内容并最终删除它之后,我终于能够继续到 'Register' VC 并查看它在 IB 中的确切情况。因此,我为 VC 创建了一个全新的 .swift 文件,为了清楚起见,我将在此处插入代码:

import UIKit

class RegisterViewController: UINavigationController {

override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}


}

这是一个完全干净的代码文件,但是一旦我在身份检查器中为此 VC 设置自定义 Class,黑屏就会发生。重申一下 它完美地工作 直到 我添加了自定义 class 另外作为一个注释,我从头开始设计了 VC main.storyboard 只是为了确认也不是这个。

老实说,我不知道为什么会这样,这让我抓狂,如果有人遇到过这种情况,请告诉我,我希望这也不是显而易见的事情。我已附上黑屏图像以供参考。

提前致谢, 亚当.

black screen

您的 VC 应该是 UIViewController 的子 class 而不是 UINavigationController。创建一个 class,它是 UIViewController 的子 class,并分配给您的 ViewController

希望对您有所帮助。