Я бы приписал атрибут сущности Core Data, скажем, это NSNumber
с именем sortOrder
.
Когда вы инициируете новый объект в этом списке, присвойте sortOrder
в порядке возрастания, чтобы был порядок сортировки по умолчанию.
Наконец, скажите fetchedResultsController
, чтобы использовать дополнительный sortDescriptor
для этого атрибута sortOrder.
Когда пользователь корректирует положение записи, вы можете установить sortOrder
на среднее значение записи до и после нее.
(Просто идея - я не занимался этой проблемой и не должен был ее реализовывать, но рассматривал ее для своего проекта в дальнейшем.)