У меня есть NSMutableArray, каждый элемент в этом массиве - это отдельный класс. В каждом классе есть много полей, таких как CPPlot, идентификатор, ... (я использую CorePlot для разработки стандартного приложения). Теперь я хотел бы сохранить этот NSMutableArray для загрузки при повторном открытии пользователем приложения, при этом будут загружены все диаграммы, которые они использовали раньше.
Я пытаюсь выяснить, как это сделать в Stackoverflow. И я обнаружил, что есть 2 решения:
NSUserDefaults
База данных SQLite
В NSUserDefaults, когда я хочу сохранить NSMutableArray, я должен реализовать с NSKeyedArchiver для архивирования и разархивирования объекта массива, а также сделать протокол NSCoding для каждого элемента в объекте массива. Но я не могу сделать это решение, потому что в каждом элементе есть некоторые поля из библиотеки CorePlot, поэтому я не могу использовать NSCoding для этих полей.
База данных SQLite, я не могу использовать это решение, потому что каждый элемент в объекте массива - это отдельный класс.
Я хотел бы спросить, есть ли другое решение для решения этой проблемы?
Надеюсь, мои слова достаточно ясны для понимания.
Спасибо