找不到头文件

时间:2012-09-18 16:10:08

标签: ios xcode import header-files

我正在开发iphone应用程序,一切顺利,直到我尝试导入NSFetchedResultsController.h。当我打字时,这个Xcode为我完成了。但现在它给出了错误:找不到NSFetchedResultsController.h文件。

我把它包括在内:

#import "NSFetchedResultsController.h"

我在互联网上寻找答案,但没有任何效果。 (还有一些东西需要Xcode 4.3才能工作)。

我在Snow Leopard上使用Xcode 4.2。

4 个答案:

答案 0 :(得分:4)

“NSFetchedResultsController.h”是CoreData框架的一部分,你必须

#import <CoreData/CoreData.h>

您还必须将CoreData框架添加到与您的应用相关联的库中:

  • 在Xcode中选择目标。
  • 点击“Build Phases”。
  • 在“Link Binary With Libraries”部分中,单击“+”并添加“CoreData.framework”。

答案 1 :(得分:4)

实际上,在大多数情况下,您确实不需要手动导入标头。 只需添加Coredata.framework即可构建阶段,如下所示:

enter image description here

enter image description here

现在在项目导航器中查看左侧,您会看到CoreData.framework已添加。打开Header文件夹,只需找到NSFetchedResultsController.h即可。 要测试它的存在,您可以输入:

  

CoreData / NSFet

瞧,代码建议告诉你你想要什么。看下图:

enter image description here

重要提示:此功能仅适用于iOS 3或更高版本

答案 2 :(得分:3)

很抱歉,如果这个讨论对于高级程序员来说非常基础,但对于最近转移到Cocoa的高级程序员或Cocoa / Xcode的初学者来说可能会有用。这可能值得一看。

当你想添加一个默认不包含的新标题时,你可以先在Google Developer中搜索google以获取该类引用(你可以直接从你的Xcode&gt; Organizer(在Xcode窗口的右上方)直接这样做 你应该看到这样一个页面:

enter image description here

两个最重要的事情是:1-框架2-继承自和 然后检查Build Phases&gt;中的框架。链接二进制文件和库,如果不存在则添加它。 通过这个,你永远不会遇到这样的问题。

答案 3 :(得分:1)

检查文件是否存在于项目文件夹中,如果是,转到项目,选择目标部分下的应用程序,转到构建阶段,打开编译源,然后添加文件NSFetchedResultsController.m