Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.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
Iphone 接口生成器文件中的未知类_Iphone_Xcode_Interface Builder_Class Reference - Fatal编程技术网

Iphone 接口生成器文件中的未知类

Iphone 接口生成器文件中的未知类,iphone,xcode,interface-builder,class-reference,Iphone,Xcode,Interface Builder,Class Reference,我创建了一个相当简单的iPhone应用程序。然后我想我会创建一个iPad版本(通用)的应用程序。尝试使用“升级”选项,但没有成功。因此,我创建了一个单独的通用应用程序,并将xib文件复制到我的项目中。这也不起作用,所以我删除了xib文件(及其相关的.m和.h文件) 现在,当我运行iPhone版本时,它在Interface Builder文件中给了我一个未知的类iPadSample1AppDelegate。错误和UISplitViewController只有在UIUserInterfaceIomP

我创建了一个相当简单的iPhone应用程序。然后我想我会创建一个iPad版本(通用)的应用程序。尝试使用“升级”选项,但没有成功。因此,我创建了一个单独的通用应用程序,并将xib文件复制到我的项目中。这也不起作用,所以我删除了xib文件(及其相关的.m和.h文件)

现在,当我运行iPhone版本时,它在Interface Builder文件中给了我一个未知的类iPadSample1AppDelegate。错误和UISplitViewController只有在UIUserInterfaceIomPad下运行时才受支持,然后退出。因此,我恢复到开始iPad冒险之前拍摄的快照…我得到了相同的错误。我尝试了XCode搜索和Spotlight搜索。在我的项目中任何地方都没有对该类或UISplitViewController的引用,但出于某种原因XCode认为有

有没有办法删除一个不存在的引用

更新:

这可能与我的XCode环境被劫持有关。在这里找到一些其他帖子后,我尝试了一个干净的All/Build/Touch,当我触摸时,我在XCode中得到了以下错误:

未捕获异常:

-[XCBuildLogWarningMessage setFileLocations:]:发送到实例0x2014dd0a0的选择器无法识别


无论如何,要重新安装XCode而不破坏其他一切?

结果是iPhone模拟器上的位与XCode不同步。我做了“重置内容和设置”,一切正常:)谁知道呢?

我也有同样的问题,但上面的解决方案并没有解决。最后,我从我的info.plist文件中删除了“主故事板文件基本名称(iPad)”条目,从而使其正常工作。

如果在目标中进行构建阶段,您将看到编译源代码。确保列出了您需要的每个m文件。如果没有,只需将其添加到此处,警告就会消失。

我做了一些研究,发现

用于我的案例

我只需要右键单击项目导航器中的文件。

选择查看/实用程序/显示文件检查器。由于某种原因,
目标成员身份未被选择

这就是为什么链接器说它不知道类的存在


我只是勾选了它,一切都很有魅力。

右键单击情节提要-->开源-->源代码


在情节提要源文件中查找未知类名。这可能是因为您不小心为一个UIView子类指定了自定义类名。

对我来说,修复它的方法是在模拟器中简单地“删除”ap,然后再次重建


可能这个类仍然在iphone模拟器的本地设置中被重选。

在我的例子中,这个错误出现在重构类名之后。不知何故,.xib文件中的类名没有更改。我在Textedit中打开了这个xib文件,并将所有旧的ClassVC替换为新的ClassVC。然后我保存了xib文件并在新构建之前清理了项目。项目运行良好。

如果您正在使用可可豆,请将.framework/.a文件拖动到项目的“链接二进制文件与库”部分。

谢谢!您刚刚为我节省了进一步调试的时间。现在我们看到的调试信息是从iOS模拟器发布的,这是有意义的。但不明显的是,该应用程序并不是每次都得到新的部署。在XCode 4的Organizer视图中清除派生数据非常好,但是如果iOS模拟器上的IB文件仍然很旧,那么它抛出奇怪的错误也就不足为奇了。谢谢你的发现我也有这个问题,但是这个解决方案对我不起作用。我的问题与复制包资源中未包含的类有关。干杯,我的症状:重构->重命名,启动时崩溃,出现“未知类:TheOneYouDeletedDerp”。听起来其他有效的解决方案也有类似的问题,但是如果有人做了同样的事情,我的解决方案就是用这个重置解决方案修复的。我刚刚从模拟器中删除了这个应用程序,这很有效。调试了2个小时后保存了我!使用ipod并卸载应用程序,然后解决它,谢谢!帮我修好了。Xcode在添加/移动文件方面有问题。谢谢,帮我避免了很多可能的麻烦。将文件添加到编译源代码中对我来说是个好办法,@Thromordyn可能是对的,Xcode没有正确地添加文件。这对我来说很有效。我已经将源文件重新排列到一个真正的文件夹层次结构中,这样我就不会在一个文件夹中有一个很长的文件列表(为什么这不是默认的xcode行为?)。之后,我的大多数源文件根本没有被编译,即使它们在xcode解决方案中!tyvm-u为我节省了2个小时的调试时间-当你知道所有的问题时,ide是很棒的,但是当你刚刚开始学习时,通常是PITA…正是我的情况。很高兴知道一种新的方法来打开xib文件,这应该是正确的答案。谢谢