我一直在为应用程序编写今天的扩展程序,我从主应用程序核心数据数据库加载它。一切似乎工作正常,我可以看到正在加载的核心数据信息,但我没有显示任何单元格
我的代码
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 Medicine Tracker 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 Medicine Tracker 2 [17360:1173272] Med:T
所以我知道正在加载数据