できれば事前にフォーマットされているか、NSStringメソッドでフォーマットされている多くのテキストを表示する必要があります。各行には詳細な画面が表示されます。詳細画面では、別のUITableViewに、「定義」、「例」などのセクションがあり、それぞれに1行しかありません。これらの行には、複数行にまたがるテキストを表示します。各セクションの列のように、すべてのテキストをSQLiteデータベースに保存する必要がありますか?データをローカルに保存する他の方法はありますか?
2 に答える
iPhoneにアプリケーションデータを保存する方法はたくさんあります。
フラットファイルの使用
これらは、保存するのに最適であると判断した形式のデータを含むファイルです。これらは、意味を成すために複雑な構造や強力な関係編成を必要としない小さなテキストデータを永続化するのに役立ちます。
Plistファイルの使用
プロパティリストファイルにはすでにキーと値の構造があり、データがこの形式に適している場合に有利に使用できます。NSDictionary
およびなどのネイティブデータ型は、NSarray
この形式との間で簡単にシリアル化および逆シリアル化できます。
NSUserDefaultsへのKey-Valueデータの保存
NSUserDefaultsは通常、アプリケーション設定やその他の少量のデータを格納するために使用され、過度の複雑さを伴わずに単純なデータ型を保持するのに役立ちます。
SQLデータベースへの情報の保存
データが強力に構造化されてリレーショナルであり、時間とパフォーマンスの理由から独自のファイルベースのデータストレージ構造をローリングすることを避けたい場合に便利です。SQL言語は、リレーショナル情報を取得して永続化するための強力なツールであり、FMDBなどのSQLiteのラッパーを使用することで、実装の複雑さを管理できます。
コアデータの使用
複雑で動的なオブジェクトグラフを永続化して管理することを計画している場合は、ストレージからシリアル化および逆シリアル化する方法を気にせずに、CoreDataが最善の策です。変更の追跡や取り消しのサポートから、リレーショナル構造の保守や移行まで、さまざまな面で役立ちます。
これは、これらの方法のほとんどの特殊性をより詳細に説明している詳細なOreillyの記事です。基本をしっかりと理解したい場合は、この記事を読んでください。
いくつかの方法は...
保存しているのが文字列の束だけの場合は、シンプルに保ち、NSUserDefaultsを使用するか、plistファイルを作成して、アプリの起動時にNSDictionaryにロードするのが理にかなっている場合があります。リレーションシップとサブプロパティを持つ実際のオブジェクトがある場合は、コアデータを調べます。