Я бы так и сделал (создаю свой кеш).Кажется, что морщина в вашем приложении против iPod.app - это бит NSFetchedResultsControllerDelegate.Я не думаю, что iPod.app предлагает именно этот интерфейс, верно?Таким образом, нет никакой автоматической поддержки создания / редактирования / переупорядочения.
Как вы сами заявили, это добавляло, что это привело к тому, что ваш метод indexPath перестал работать.
Я думаю, вам просто нужноРуку это.Это выглядит довольно типично для API-интерфейсов Apple: как только вы отклоняетесь от простых сценариев использования, функциональность их удобства начинает сталкиваться с проблемами.Вы должны регистрировать ошибки в отчете об ошибках, предлагая, как бы вы хотели, чтобы это работало - надеюсь, они что-нибудь придумают в будущем, так как это похоже на случай использования, с которым могут столкнуться другие.
Также яне знаю, нужно ли вам пройти весь путь до хранения в NSArrays, но если вы это сделаете, выгрузите свои выборки и кэшируйте только то, что необходимо в ОЗУ, если набор может стать действительно большим.
У меня естьЯ работаю над простым приложением для работы с фотографиями, а кэш поддерживается чем-то, что эффективно работает как курсор.На данный момент я тоже все храню в памяти, но детали скрыты за интерфейсом, который я смогу довольно легко реорганизовать.Интерфейс выглядит как массив, но автоматически знает, что нужно идти в сеть для получения дополнительных наборов результатов, кэшировать их в CoreData и смешивать результаты с разных страниц.Итак, мой делегат UITableView просто выполняет [cursor objectAtIndex: blah], и магия скрыта за кулисами.Это очень выполнимо.
Суджал