5

有没有办法为 iOS 上的获取结果控制器动态设置排序描述符?

例如,我需要根据导航标题栏中分段控件的设置对返回给我的核心数据结果进行排序。用户可以单击分段控件以按价格或优先级排序。

然后,我需要获取的结果控制器返回并显示核心数据信息,这些信息根据该分段控制值分类为多个部分。

我最初知道如何设置排序描述符,但我不确定如何动态更改/更新它。由于该- (NSFetchedResultsController *)fetchedResultsController函数是延迟加载的,它是否总是只返回第一次创建的 frc(从而返回初始排序描述符设置)?

我是否会做一些事情,比如将分段控件值存储在 sharedPreferences 中,然后当它被更改时,将我的 fetchedResultsController 设置为 nil 以便生成一个新的?然后在 fetchedResultsController 函数中,我可以根据 sharedPreferences 设置创建我的 sortDescriptor 吗?

4

1 回答 1

5

你可以控制它。例如,您可以在更新分段控件时释放控制器并在您的表上调用 reload。这将导致控制器使用新的排序进行重建。

还有其他解决方案,但它们取决于您的应用程序设计。

于 2010-06-19T15:08:40.263 回答