#ios #xcode #uitableview
#iOS #xcode #uitableview
Вопрос:
Это скриншот моего приложения, которое собирает статьи в формате json из newsAPI. Я хочу реализовать функцию, которая сохраняет, удаляет и сохраняет данные с помощью CoreData. Каков наилучший способ решения этой проблемы? [Приложение для просмотра таблиц]: https://i.stack.imgur.com/TGayE.jpg
Ответ №1:
Прочитайте руководство о том, как добавить CoreData в ваше приложение. И всегда полезно читать документацию Apple.
Добавьте один объект CoreData с атрибутами: изображение, автор, описание, дата, URL, … (CoreData имеет функцию для хранения больших (r) объектов данных, таких как изображения, во внешних файлах. Не беспокойтесь об этом; просто сохраните данные ваших изображений внутри объекта. Ваши изображения не будут очень большими, их будет не очень много, и у вас не будет проблем с производительностью.)
Используется NSFetchedResultsController
для заполнения таблицы.
Добавьте логику выпадающего списка для обновления / перезагрузки в таблицу.
Затем вам нужно будет изменить поток данных вашего приложения: слой, который собирает статьи, теперь будет записывать данные в CoreData. Теперь таблица будет обновляться автоматически (с помощью NSFetchedResultsController
) при изменении ваших данных. Предполагая, что теперь вы просто обновляете всю таблицу, с помощью CoreData вам нужна проверка для фильтрации полученных новостей, которые вы уже сохранили (просто чтобы избежать дублирования при каждой перезагрузке).
При фильтрации дубликатов статей имейте в виду, что некоторые поля могут быть обновлены. Таким образом, ваша логика поиска дубликатов должна быть немного более разумной, чем просто сравнение полей элементов в CoreData и полученных элементов.
Комментарии:
1. Спасибо. Должен ли я сохранять объекты как дополнительные?