Ios 无法链接UITextField的IBOutlet

Ios 无法链接UITextField的IBOutlet,ios,swift,uitextfield,iboutlet,Ios,Swift,Uitextfield,Iboutlet,我尝试在我的主故事板上添加一个出口,然后CTRL+将其拖到相应的视图控制器中 class LoginViewController: UIViewController { @IBOutlet weak var nameField: UITextField! } 在这样做的时候,我得到了这个错误 Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController

我尝试在我的主故事板上添加一个出口,然后CTRL+将其拖到相应的视图控制器中

class LoginViewController: UIViewController {
    @IBOutlet weak var nameField: UITextField!
}
在这样做的时候,我得到了这个错误

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x7f7ff051e860> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key nameField.'
由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[setValue:forUndefinedKey:]:此类不符合密钥名称字段的密钥值编码。”

导致此问题的原因是什么?

原因是您仍然有一个无效的插座连接到interface builder中的
UITextField

在interface builder中选择标签,然后单击最右侧面板中的箭头图标,并检查是否没有额外的标签 我在那里


原因是您仍然有一个无效的插座连接到interface builder中的
UITextField

在interface builder中选择标签,然后单击最右侧面板中的箭头图标,并检查是否没有额外的标签 我在那里


这里的问题是它正在创建一个
UIViewController
的实例,而不是
LoginViewController
的实例。您可以判断,因为错误消息显示的是
,而不是
。由于
UIViewController
没有
nameField
outlet,因此当故事板加载程序尝试连接该outlet时,会出现错误

有两种可能的解释:

  • 故事板中的自定义类未设置为
    LoginViewController
    。在情节提要的场景中选择视图控制器。从菜单栏中,选择查看>实用程序>显示标识检查器。然后,在标识检查器(右侧窗格)中,确保该类设置为
    LoginViewController

    如果Xcode允许您连接插座,您必须在某个点设置自定义类。但是,您可能意外地在之后撤消了更改

  • 包含
    LoginViewController
    源代码的文件不是目标(应用程序)的一部分。在这种情况下,调试控制台前面应该有另一条消息,如下所示:

    2016-02-08 22:08:04.569 test[3049:9594499] Unknown class _TtC4test16MyViewController in Interface Builder file.
    
    要解决此问题,请打开
    LoginViewController.swift
    文件(或包含该类的任何文件)。从菜单栏中,选择“视图>实用程序>显示文件检查器”。在“文件检查器”(右侧窗格)中,找到“目标成员资格”部分并启用应用程序旁边的复选框


  • 这里的问题是它正在创建
    UIViewController
    的实例,而不是
    LoginViewController
    的实例。您可以判断,因为错误消息显示的是
    ,而不是
    。由于
    UIViewController
    没有
    nameField
    outlet,因此当故事板加载程序尝试连接该outlet时,会出现错误

    有两种可能的解释:

  • 故事板中的自定义类未设置为
    LoginViewController
    。在情节提要的场景中选择视图控制器。从菜单栏中,选择查看>实用程序>显示标识检查器。然后,在标识检查器(右侧窗格)中,确保该类设置为
    LoginViewController

    如果Xcode允许您连接插座,您必须在某个点设置自定义类。但是,您可能意外地在之后撤消了更改

  • 包含
    LoginViewController
    源代码的文件不是目标(应用程序)的一部分。在这种情况下,调试控制台前面应该有另一条消息,如下所示:

    2016-02-08 22:08:04.569 test[3049:9594499] Unknown class _TtC4test16MyViewController in Interface Builder file.
    
    要解决此问题,请打开
    LoginViewController.swift
    文件(或包含该类的任何文件)。从菜单栏中,选择“视图>实用程序>显示文件检查器”。在“文件检查器”(右侧窗格)中,找到“目标成员资格”部分并启用应用程序旁边的复选框


  • 第二个问题是我的问题!我重新连接了目标会员并删除了以前的一些门店,这解决了问题。谢谢第二个问题是我的问题!我重新连接了目标会员并删除了以前的一些门店,这解决了问题。谢谢