Transient sectionNameKeyPath & NSSortDescriptor NSFetchedResultsController

У меня есть список задач в Core Data. Я извлекаю их в UITableView, используя NSFetchedResultsController.

Мне нужны пользовательские разделы в произвольном порядке:

OVERDUE ACTIVE ONGOING POSTPONED COMPLETED

Чтобы определить, в какой раздел должна войти задача, я использую производный переходный атрибут, рассчитанный на лету на основе других атрибутов в относительном объекте.

К сожалению, вы не можете передать производное значение в качестве дескриптора сортировки, используемого запросом выборки. Это связано с тем, что выборка опирается на данные, которые запрашиваются для выборки. Цыпленок и Яйцо.

Я понимаю, почему я не могу этого сделать, что не помогает мне решить проблему!

Я пробовал:

Subclassing NSFetchedResultsController to 'customise creation of sections and index titles'. Maybe I'm doing this wrong however this just changes the names and orders of sections, not how many things go in those sections (which is critical).

Populating arrays per section and feeding them to the table (clunky, slow yet fully works).

Ripping out ongoing & postponed tasks (which works, but isn't ideal). This way I can sort by dueDate and drive the sectionNameKeyPath via the transient values.

У кого-нибудь есть идеи получше? Уже есть немало вопросов, подобных этому, но ни один из них не подходит для правильного решения.

Заранее спасибо!

ура

Ответы на вопрос(1)

Ваш ответ на вопрос