即使接口生成器是一个MyClass,我得到一个错误时启动应用程序。
当MyClass是库的一部分时,就会发生这种情况,如果直接在应用程序目标中编译该类则不会发生这种情况。
即使接口生成器是一个MyClass,我得到一个错误时启动应用程序。
当MyClass是库的一部分时,就会发生这种情况,如果直接在应用程序目标中编译该类则不会发生这种情况。
当前回答
如果你有多个StoryBoard并且其中一个StoryBoard使用的是不存在的,那么这个“Interface Builder file中的Unknown class”错误就会在运行时出现。
其他回答
当我添加一个选择器视图,然后删除它时,这个问题发生在我身上。如果它能帮助到别人,下面是我最终解决它的方法:
在XCODE打开文档大纲(不知道什么是文档大纲?我也没有-谷歌..:))。 在文档大纲窗口中找到使警告消息出现的场景。 在有问题的场景中,站在View上(点击),然后在Utility(谷歌it)窗口中选择Identity inspector选项卡,将自定义类名更改回默认的UIView。
不。:)
这与Interface Builder没有任何关系,这里发生的是符号没有被Xcode从静态库中加载。要解决这个问题,你需要将-all_load -ObjC标记添加到项目(可能是目标)构建设置的其他链接器标记键。
由于Objective-C每个类只生成一个符号,我们必须通过使用-ObjC标志强制链接器加载类的成员,我们还必须通过添加-all_load链接器标志强制包含静态库中的所有对象。如果你跳过这些标志,你迟早会遇到无法识别的选择器错误,或者得到其他异常,就像你在这里观察到的一样。
在尝试了这里的大多数建议都没有成功之后,我只是重命名了我的类,然后在xib文件中手动重命名它(源代码是开放的)。问题就这样解决了。
我通过从我的class.h和.m复制文本来修复这个问题,从项目中删除这些类文件,并使用“添加文件”创建新的class.h和.m文件。然后我将代码粘贴回新文件中,一切都运行良好。由于某种原因,文件在创建时没有正确链接。在那之后,我不需要使用任何链接标志。
I tried most of the solutions you guys suggested above but to no avail. After reading the solution from user776904's I suspected I was having the same issue as I had rebuilt my app from the ground up but copied the xib files from the previous project. I suspected the xib file had a reference to the old project that was causing my error so I simply deleted my mainwindow_ipad.xib file and copied in a new one from a clean new project. This solved it. And I was not game enough to start changing bits of the xib file in its source code.