Swift 2.3 / Xcode 7.3.1
您好我在Core数据中创建一个Entity然后在Editor中创建NSManagedObject类。 (目标 - C)
在此之后我创建了Class并尝试使用Entity作为扩展
import Foundation
extension EntityTest {
}
但显示错误消息“使用未声明的类型'实体测试'”。在其他实体中正常工作。有人可以向我解释为什么会这样吗?
编辑:问题通过简单的添加“#import”file.h来解决“在桥接标题处暴露给Swift
答案 0 :(得分:0)
现在,Coredata自动将其实体生成为NSManagedObject。 这似乎是Xcode的一个错误。
因此,要解决此问题,请转到xcdatamodeld文件,选择实体make compile错误,然后选择Xcode右侧的Core Data Inspector。
您可以在“课程”部分找到标题为“Codegen”的投递框。
如果要手动生成NSMsnagedObject文件,请将Codegen设置为Manual / None。
或选择“类定义”。
现在,保存文件(这很重要。),然后清理。
祝你好运。答案 1 :(得分:0)
您需要确保项目中没有任何* .properties.swift文件。如果您这样做,请删除它们,然后删除实体 - 编辑器>创建上面的NSManagedObject子类步骤
如果你从xCode中删除了* properties.swift文件并且只删除了对它们的引用,那么它们就会被遗留下来。 Xcode仍然可以看到这些文件,它不会创建其他文件,并且它会出错并且错误输出。
答案 2 :(得分:0)
希望这有帮助!
答案 3 :(得分:0)
当您忘记选中“是初始视图控制器”时,可能会发生!