NSMutableArray があります。この配列の各項目は異なるクラスです。各クラスには、CPPlot、識別子などの多くのフィールドがあります(私はCorePlotを使用してストックアプリケーションを開発しています)。ここで、この NSMutableArray を保存して、ユーザーがアプリケーションを再度開いたときにロードするようにします。これにより、以前に使用したすべてのチャートがロードされます。
私は Stackoverflow でそれを行う方法を理解しようとしています。そして、2つの解決策があることがわかりました:
NSUserDefaults
SQLite データベース
NSUserDefaults では、NSMutableArray を保存する場合、配列オブジェクトをアーカイブおよびアーカイブ解除するために NSKeyedArchiver を実装し、配列オブジェクトの各項目に対して NSCoding プロトコルも実行する必要があります。しかし、各アイテムにはCorePlotライブラリのフィールドがいくつかあるため、これらのフィールドにNSCodingを使用できないため、このソリューションを実行できません。
SQLiteデータベース、配列オブジェクトの各項目が異なるクラスであるため、このソリューションを使用できません。
この問題を解決するための他の解決策があるかどうかを尋ねたいと思いますか?
私の言葉が理解できるほど明確であることを願っています。
ありがとう