我一直在为应用程序编写今天的扩展程序,并且我从主应用程序核心数据数据库加载它。一切似乎工作正常,我可以看到正在加载的核心数据信息,但我没有显示任何单元格
我有的代码
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return self.fetchedResultsController.sections!.count
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let sectionInfo = self.fetchedResultsController.sections![section] as NSFetchedResultsSectionInfo
return sectionInfo.numberOfObjects
}
var fetchedResultsController: NSFetchedResultsController {
if _fetchedResultsController != nil {
return _fetchedResultsController!
}
var instance = Singleton.sharedInstance
let fetchRequest = NSFetchRequest()
// Edit the entity name as appropriate.
let entity = NSEntityDescription.entityForName("Medicine", inManagedObjectContext: instance.moc)
fetchRequest.entity = entity
// Edit the sort key as appropriate.
let sortDescriptor = NSSortDescriptor(key: "active", ascending: false)
let sortDescriptors = [sortDescriptor]
fetchRequest.sortDescriptors = [sortDescriptor]
// Edit the section name key path and cache name if appropriate.
// nil for section name key path means "no sections".
let aFetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: instance.moc, sectionNameKeyPath: nil, cacheName:nil)
aFetchedResultsController.delegate = self
_fetchedResultsController = aFetchedResultsController
var error: NSError? = nil
if !_fetchedResultsController!.performFetch(&error) {
abort()
}
return _fetchedResultsController!
}
var _fetchedResultsController: NSFetchedResultsController? = nil
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as UITableViewCell
var med : Medicine = self.fetchedResultsController.objectAtIndexPath(indexPath) as Medicine
NSLog("Med: %@" , med.name)
cell.textLabel?.text = med.name
cell.detailTextLabel?.text = "Next Due: " + med.nextDueDate()
return cell
}
cellforrowatindex 路径中 nslogs 的结果导致
2014-09-23 00:14:34.663 Medicine Tracker 2[17360:1173272] MOC 创建
2014-09-23 00:14:34.940 医学追踪器 2[17360:1173272] Med: Med
2014-09-23 00:14:34.955 Medicine Tracker 2[17360:1173272] Med: Trdt
2014-09-23 00:14:34.963 Medicine Tracker 2[17360:1173272] Med: Jfthm
2014-09-23 00:14:34.972 Medicine Tracker 2[17360:1173272] Med: Te
2014-09-23 00:14:34.983 Medicine Tracker 2[17360:1173272] Med: Sf
2014-09-23 00:14:34.999 医学追踪器 2[17360:1173272] Med: T
所以我知道正在加载数据