Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IOS Swift-模式视图错误_Ios_Swift_Modal Dialog - Fatal编程技术网

IOS Swift-模式视图错误

IOS Swift-模式视图错误,ios,swift,modal-dialog,Ios,Swift,Modal Dialog,我在斯威夫特遇到了一只很奇怪的虫子 我创建了一个嵌入在NavigationController中的ViewController(a)。 在右上角,我看到了Barbuttoneim,他在故事板的模式中设置了一个到另一个Viewcontroller(B)的序列 在主VC(A)中,我有多个文本字段,其代表是主VC override func viewDidLoad() { super.viewDidLoad() intervalTextField.delegate = self

我在斯威夫特遇到了一只很奇怪的虫子

我创建了一个嵌入在NavigationController中的ViewController(a)。 在右上角,我看到了Barbuttoneim,他在故事板的模式中设置了一个到另一个Viewcontroller(B)的序列

在主VC(A)中,我有多个文本字段,其代表是主VC

override func viewDidLoad() {
    super.viewDidLoad()

    intervalTextField.delegate = self
    endTimeTextField.delegate = self
    ... 
}
当我运行我的应用程序时,新的ViewController(B)(在故事板中)未与ViewController.swift(B)绑定。当我单击“取消条形图”按钮时(从A)。它显示模式(B)没有问题。当我使用模态viewController(B)的swift文件在情节提要中绑定(B)时。比姆

我得到了这个错误:

致命错误:在展开可选值时意外发现nil

调试器使用EXC_BAD_指令指向主ViewController(A)中第一个TextField委托的定义

我删除了(B)并创建了另一个ViewController(C)(首先是故事板),没有绑定代码。它起作用了。我创建另一个ViewController.swift(C),然后绑定它们。当我在(a)和(C)之间放置一个模态分段时,同样的错误也会发生

问题是什么?为什么会出现这种错误?哦

提前谢谢


编辑:我添加了A、B、C以便于理解。(A)控制器也工作得很好,我的文本字段工作得很好,被声明,等等。

您可能需要更新您的问题,明确说明哪个视图控制器是哪个视图控制器。我有点搞不清楚您到底在哪里遇到了错误,但基本上抛出了这个异常,因为您的
UITextField
nil
。确保已将任何
IBOutlet
正确连接到视图控制器。右键单击UITextField以查看其连接是否正确。如果连接正确,您将在您的
IBOutlet
中看到一个小黑点,如下所示:

^


将鼠标悬停在上方并单击该点应该会将您带到代码中正确的
UITextField

谢谢您的回答,为了更清晰,我更新了我的帖子。问题不应该存在,因为所有(A)控制器工作正常。在您的问题中,您写道“调试器指向主ViewController中第一个TextField委托的定义”。这是否意味着主视图控制器(A)工作不正常?在IB中,如果右键单击
intervalTextField
,它是否会显示引用出口?这是个谜。。。在(A)上一切正常,我点击按钮加载(B)。我们可以在stacktrace中看到,在指向TextField的委托声明之前,我们在(B)的viewDidLoad中。这就是为什么我不能理解调试器指向(A)的原因。我重新创建了您的错误,但从您提供的信息中,我唯一可以推断的是,导致错误的任何文本字段都没有正确地从Interface Builder连接到代码中正确的IBOutlet。同样,当您右键单击Interface Builder中的文本字段时,引用插座的名称是否与其关联的视图控制器中的名称匹配,以及其是否已连接(以小灰点显示)?我的文本字段已绑定。这是截图