使用NSFetchRequest如何获取最后的X项并继续向上

时间:2014-03-28 12:58:08

标签: ios nsfetchedresultscontroller nsfetchrequest

我在NSFetchRequest中使用NSFetchedResultsController来获取数据,并根据日期进行排序

  NSSortDescriptor *sortDescriptor=[[NSSortDescriptor alloc] initWithKey:@"timeStamp" ascending:YES];

正如您所看到的,它会根据时间戳对结果进行排序,我可以得到升序和降序结果。

但我想要的是,让我们说如果我有1-100行。 在第一个查询中,我希望得到95-100个结果,然后是90-100个,然后是85-100个......

由于

2 个答案:

答案 0 :(得分:2)

设置NSFetchRequest的fetchOffsetfetchLimit

答案 1 :(得分:0)

fetchOffsetfetchLimit会帮助您对结果进行分页,这不是我的问题。

NSSortDescriptor更改为升序或降序将显示如下结果 10到6然后在第二次迭代中10到1或1到5,在第二次迭代中用1到10

我想要的是,例如,如果我有1到10行,我想在第一次迭代中显示6到10行,在第二次迭代中以相同的顺序显示1到10。

您可以使用NSPredicate

来实现此结果
NSPredicate * predicate = [NSPredicate predicateWithFormat:@"timeStamp >=%@",[[NSDate date] dateBySubtractingDays:self.page]];