[英]How to get the latest objects from NSFetchedResultsController with a limit?
也許問題的標題是不是apriopriate,但這里是我需要實現我的NSFetchedResultsController
:
private func setupOnceFetchedResultsController() {
if fetchedResultsController == nil {
let context = NSManagedObjectContext.MR_defaultContext()
let fetchReguest = NSFetchRequest(entityName: "WLComment")
let createdAtDescriptor = NSSortDescriptor(key: "createdAt", ascending: true)
fetchReguest.predicate = NSPredicate(format: "item.identifier = %d", item.identifier)
fetchReguest.sortDescriptors = [createdAtDescriptor]
fetchReguest.fetchLimit = 10
fetchedResultsController = NSFetchedResultsController(fetchRequest: fetchReguest, managedObjectContext: context, sectionNameKeyPath: nil, cacheName: nil)
fetchedResultsController.delegate = self
try! fetchedResultsController.performFetch()
tableView.reloadData()
}
}
假設我有100條評論。 最舊的在頂部,最新的在底部。 當我需要顯示所有它們時沒有問題,但是在這里我只需要顯示10個即可。 上面的NSFetchedResultsController
將顯示100條消息中的前10條,但是我需要顯示最新的10條。
有沒有辦法讓我知道我需要什么?
根據以后使用數據的方式,可以選擇至少兩個選項:
還原排序描述符,將以還原順序返回排序列表的末尾;
首先獲取項目數並設置適當的fetchOffset
,將返回所需的項目數,並根據需要進行排序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.