Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用NSFetchedResultsController在底部UITableView中加载更多内容_Ios_Swift_Uitableview_Core Data - Fatal编程技术网

Ios 使用NSFetchedResultsController在底部UITableView中加载更多内容

Ios 使用NSFetchedResultsController在底部UITableView中加载更多内容,ios,swift,uitableview,core-data,Ios,Swift,Uitableview,Core Data,当用户在最后一个单元格中时,我想加载更多单元格。我使用CoreData并从中获取数据。我用answer做我想做的事,但它不起作用。会有什么问题?我还有一个问题。我不知道为什么只在第一次实现时工作 首次实施 第二次实施 很难说第一个解决方案为什么会出现,但第二个解决方案没有看到其他代码,这些代码本可以使用fetchedResultsController或调用initilizeFetchedResultsController() 无法获取更多数据的原因是您已将fetchLimit硬编码为10。不管你

当用户在最后一个单元格中时,我想加载更多单元格。我使用CoreData并从中获取数据。我用answer做我想做的事,但它不起作用。会有什么问题?我还有一个问题。我不知道为什么只在第一次实现时工作

首次实施

第二次实施


很难说第一个解决方案为什么会出现,但第二个解决方案没有看到其他代码,这些代码本可以使用
fetchedResultsController
或调用
initilizeFetchedResultsController()

无法获取更多数据的原因是您已将
fetchLimit
硬编码为10。不管你做什么,你只会得到10个结果

您需要更改fetchLimit以获取更多数据。看看这个答案——它与您需要做的类似:

我就是这样做的,我碰巧得到了一个极限
var fetchedResultsController: NSFetchedResultsController {
    let moc = DatabaseController.sharedInstance.managedObjectContext
    let fetchRequest = NSFetchRequest()
    let entity = NSEntityDescription.entityForName("Coctail", inManagedObjectContext: moc)

    fetchRequest.entity = entity
    fetchRequest.fetchLimit = 10
    fetchRequest.sortDescriptors = [NSSortDescriptor(key: "name", ascending: true)]

    let aFetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest,
                                                               managedObjectContext: moc,
                                                               sectionNameKeyPath: nil,
                                                               cacheName: nil)
    aFetchedResultsController.delegate = self

    do {
        try aFetchedResultsController.performFetch()
    } catch {
        fatalError("\(error)")
    }
    return aFetchedResultsController
}
func initilizeFetchedResultsController() {
    let moc = DatabaseController.sharedInstance.managedObjectContext
    let fetchRequest = NSFetchRequest()
    let entity = NSEntityDescription.entityForName("Coctail", inManagedObjectContext: moc)

    fetchRequest.entity = entity
    fetchRequest.fetchLimit = 10
    fetchRequest.sortDescriptors = [NSSortDescriptor(key: "name", ascending: true)]

    let aFetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest,
                                                               managedObjectContext: moc,
                                                               sectionNameKeyPath: nil,
                                                               cacheName: nil)
    aFetchedResultsController.delegate = self

    do {
        try aFetchedResultsController.performFetch()
    } catch {
        fatalError("\(error)")
    }
    fetchedResultsController = aFetchedResultsController
}