Xcode 在另一个viewcontroller中引用的Xib标签

Xcode 在另一个viewcontroller中引用的Xib标签,xcode,ios11,swift4,Xcode,Ios11,Swift4,这是我收到的错误消息: 由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[setValue:forUndefinedKey:]:此类不符合密钥名称标签的键值编码。” 下面解释了它与其他问题的区别。因为我实际上是按照提供的链接中的说明进行操作的 我已将Xib链接如下: 我要使用的ViewController是MapViewController。 Xib是MarkerInfoView 文件所有者是MapViewController,也是我创建Outlet的地方

这是我收到的错误消息: 由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[setValue:forUndefinedKey:]:此类不符合密钥名称标签的键值编码。” 下面解释了它与其他问题的区别。因为我实际上是按照提供的链接中的说明进行操作的

我已将Xib链接如下: 我要使用的ViewController是MapViewController。 Xib是MarkerInfoView 文件所有者是MapViewController,也是我创建Outlet的地方


我认为这是因为当您向文件所有者注册xib时,它可能会重新创建,并且出口会自动断开连接。
我不使用那种注册NIB的方法来使用XIB初始化MapInfo(nibName:“XibName”,bundle:nil)

其他可能的事情是,您的插座实际上连接到MapInfo视图,而不是控制器。删除它们并重新创建到您的viewcontroller上

它的可能副本与我使用的答案不同。这也是针对XCode 9和swift而不是objective C以及上面显示的旧版本的XCode的。很难从您发布的内容中看出什么,但根据我的经验,当您的插座不匹配时,就会发生此错误。试着检查每一个插座,确保它们指向一个有效的插座,并确保没有额外的插座,可能是通过更改名称或删除代码,而不是连接高兴地添加详细信息。但是屏幕截图是为了显示插座设置正确,以及文件所有者。事实上,我刚刚意识到,错误明确表示您的名称标签插座存在问题。也许可以尝试断开并重新连接该插座?Thx,但我尝试根据与CodeNinja的讨论再次添加插座,这样就不会发生这种情况。您所指的另一种方法是什么?从文件的所有者中删除MarkerInfoView,并将其添加到视图中,这是第一响应程序。这就是我使用它们的方式,因为我以前也有同样的问题,谢谢enea,但我需要xib,因为它被用作地图上的标记。所以在这种情况下不起作用。嗨,Enea,我在重温这个。“在视图中添加”是什么意思。什么是“它”?thanks@user2867432我就是看不到图像上的代码。它太小了您好,请参见以下内容:“由于未捕获的异常'NSUnknownKeyException'而终止应用程序,原因:'[setValue:forUndefinedKey:]:此类不符合密钥名称标签的键值编码。”