ios - 为什么我的类明明有 NSManagedObject 属性却出现错误?

标签 ios core-data swift nsfetchedresultscontroller nsmanagedobjectcontext

我有一个 UIViewController 子类 MyViewController,它有一个 NSFetchedResultsController 和一个 NSManagedObjectContext。但是当我去创建 NSFetchedResultsController 时,它说我在 MyViewController 上没有 ManagedObjectContext 属性。

var managedObjectContext: NSManagedObjectContext!
var fetchedResultsController: NSFetchedResultsController = {
    let fetchRequest = NSFetchRequest()
    let entity = NSEntityDescription.entityForName("Post", inManagedObjectContext: self.managedObjectContext)
    fetchRequest.entity = entity
    fetchRequest.fetchBatchSize = 50
}()

我不是清楚地在它之前声明了一个 ManagedObjectContext 变量吗?我做错了什么?

最佳答案

属性的初始值设定项不能引用同一属性中的另一个属性 类除非您将其声明为惰性计算属性。

您还忘记从闭包返回获取的结果 Controller 。

var managedObjectContext: NSManagedObjectContext!
lazy var fetchedResultsController: NSFetchedResultsController = {
    let fetchRequest = NSFetchRequest()
    let entity = NSEntityDescription.entityForName("Post", inManagedObjectContext: self.managedObjectContext)
    fetchRequest.entity = entity
    fetchRequest.fetchBatchSize = 50
    let fetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext, sectionNameKeyPath: nil, cacheName: nil)
    return fetchedResultsController
    }()

关于ios - 为什么我的类明明有 NSManagedObject 属性却出现错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26196815/

相关文章:

ios - 在 uiimageview 中具有边框的着色区域

ios - 如何更快地加载 MKMapView?

ios - 应用程序不要求照片库使用权限

ios - NSFetchedResultsController 性能不佳

ios - 发送 NSMutableURLRequest 时如何在 objective-c 中使用代理服务器?

ios - 在事件发生后访问另一个 View Controller 的属性

ios - Swift 中的条件导入不起作用?

使用具有通用关联类型的枚举的 Swift 协议(protocol)

swift - “ fatal error :在展开可选值时意外发现nil”是什么意思?

iphone - 如何从不同线程更改 Core Data 对象,而无需在每次更改后保存