相关疑难解决方法(0)

使用NSFetchedResultsController的自定义部分?

我正在制作一个带有结果的分段表,但我很难找到定制的部分.

通常,只有一个属性可以排序,并用于sectionNameKeyPath:生成节.但我的排序属性是动态计算的,我似乎无法fetchedResultsController正确使用它...

更新:使用下面的jbrennan的建议,我真的很接近预期的功能.我添加了一个类别NSDate,返回"天前"数字; 把它放在这里给我基于这些数字的部分:

NSFetchedResultsController *aFetchedResultsController =
    [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest
    managedObjectContext:managedObjectContext
    sectionNameKeyPath:@"myDateAttribute.daysAgo"
    cacheName:@"Root"];
Run Code Online (Sandbox Code Playgroud)

这就是我被困住的地方:我不需要它们按"天前"排序,我需要根据实体中的其他属性通过一些计算对它们进行排序.所以我不能只调用那个自定义的Category方法,我需要调用带参数的方法,如下所示:

[myDateAttribute sortingRoutine:thisObject.value]
Run Code Online (Sandbox Code Playgroud)

或类似的东西.我希望这有一定程度的意义.非常感谢,如果你可以帮助:)

iphone cocoa-touch core-data uitableview

13
推荐指数
2
解决办法
8017
查看次数

按用户位置排序NSFetchedResultsController结果

我有一个应用程序,其中包含核心数据中的一些位置,我想以接近用户位置的顺序向用户显示它们.我正在使用NSFetchedResultsController来为表视图提供位置.我考虑过创建一个虚拟访问器方法来返回位置与用户的距离,该方法将使用"全局"CoreLocationManager计算,但它会因原因而崩溃:

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'在实体<NSSQLEntity Location id = 4>中找不到keypath distanceFromCurrentLocation'

我还给用户提供了按字母顺序排序的选项,所以如果可能的话,如果我保留了NSFetchedResultsController,我会更喜欢它.

我该怎么办?

谢谢!

iphone core-data objective-c nsfetchedresultscontroller

6
推荐指数
1
解决办法
2278
查看次数