Jon*_*nas 9 iphone objective-c ios
我创建了一个项目而没有检查"使用CoreData".项目名称是"词汇表"
现在我改变了主意,因此我添加了一个数据模型,使用Add-> New File-> Resource-> Data Model->给它命名Glossary-> didn`t选择任何class-> Finish.
下一步是设计我的数据模型.然后我将所需的代码添加到我的AppDelegate.对于我遵循本教程的所有步骤:https: //developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/iPhoneCoreData01/Introduction/Introduction.html%23//apple_ref/doc/uid/TP40008305-CH1 -SW1
我现在的问题是在这一行:
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"glossary" withExtension:@"momd"]
Run Code Online (Sandbox Code Playgroud)
modelURL永远是nill创建一个额外的NSBundle Ref并且调用mainBundle告诉我这是有效的,但是我不知道它是否真的是正确的路径.
在创建工作时选择"使用CoreData"的项目上执行相同的步骤.
有人有想法吗?
我不是 100% 确定,但 URLForResource 仅适用于文件并且momd是目录。
URLForResource 文档:该方法首先在指定包的非本地化资源目录中查找匹配的资源文件。(在 Mac OS X 中,此目录通常称为 Resources,但在 iOS 中,它是主捆绑包目录。)如果未找到匹配的资源文件,则会在任何可用的特定于语言的 \xe2\x80 的顶层进行查找\x9c.lproj\xe2\x80\x9d 目录。(特定于语言的目录的搜索顺序对应于 user\xe2\x80\x99s 首选项。)它不会递归通过任何这些位置的其他子目录。有关更多详细信息,请参阅捆绑包和本地化。
\n