我有一个启用了Core Data的Swift项目。我检查AppDelegate
,我看到了额外的功能。我犯了一个错误并重命名了xcdatamodeld
文件,并在AppDelegate.swift
在我的主视图控制器中,我添加了import CoreData
我尝试定义属性:
class ScannerViewController: UIViewController, UITableViewDataSource, UITableViewDelegate, AVCaptureMetadataOutputObjectsDelegate {
let moContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
但是当我测试时,我立即得到编译错误:
编译错误:
0x1002a4a78< + 40>:bl 0x1002f1910; Swift的函数签名特化。(_ fatalErrorMessage(Swift.StaticString,Swift.StaticString,Swift.StaticString,Swift.UInt) - >())。(闭包#2) - > 0x1002a4a7c< + 44>:brk#0x1 0x1002a4a80< +48
如果我取消注释let moContext
,则应用编译时没有任何错误。
[编辑]我也看到了
fatal error: unexpectedly found nil while unwrapping an Optional value
这是否意味着我的托管对象上下文是nil ??
[编辑2] 我想我找到了原因:我已经重命名了.xcdatamodeld并且在AppDelegate.swift中进行了编辑,但我认为这不是正确的方法。那么如何在没有运行时错误的情况下重命名.xcdatamodeld文件?