テーブルの項目のデフォルトリストと、ユーザが追加したカスタム項目を配列に入れてiPhoneアプリケーションを開発しています。現時点では、そのビューの「ViewDidLoad」メソッドで、すべてのデフォルトオブジェクトを1つずつ作成するだけです。新しいデバイスに置いたときにアプリと共に出荷されるiPhoneアプリのデフォルトデータを作成するより良い方法があるかどうかを知りたいと思います。iPhoneのデフォルトデータ
おかげで、 JheeBz
テーブルの項目のデフォルトリストと、ユーザが追加したカスタム項目を配列に入れてiPhoneアプリケーションを開発しています。現時点では、そのビューの「ViewDidLoad」メソッドで、すべてのデフォルトオブジェクトを1つずつ作成するだけです。新しいデバイスに置いたときにアプリと共に出荷されるiPhoneアプリのデフォルトデータを作成するより良い方法があるかどうかを知りたいと思います。iPhoneのデフォルトデータ
おかげで、 JheeBz
はNSDictionary
またはNSArray
を説明plist
リソースを作成します。メインバンドルのリソースのパスを見つけ、これを使用して辞書または配列に展開します。
File -> New File -> iOS Resource -> Property List
にアクセスしてください。
あなたがやっている最悪のことは、create every default object one by one in the "ViewDidLoad"
です。これは非常に悪いデザインであり、まったくお勧めできません。
あなたのデータ、ファイル(plist/json)、データベースなどの管理方法に関係なく、デフォルトの値をに設定することができるシングルトンクラスでデータを管理することを強くお勧めします。とその後ReadContentController内からを読み取り/変更/削除/追加します。
これにより、データロジックがビューから分離され、ストレージメカニズムから抽象化されます。さておき、簡単にファイルの初期デフォルト設定のためのようなJSONを使用してアクセスするための設定や[NSUserDefaults standardUserDefaults] objectForKey:(NSstring*)]
ため[NSUserDefaults standardUserDefaults] setObject:(id) forKey:(NSString)]
を持つユーザーの変更を永続化することができ
。
ハッピーコーディング:)
コアデータを使用していますか? .sqliteを生成し、必要に応じてデフォルトのデータベースをアプリケーションのドキュメントディレクトリにコピーするために実行できる#defineアクションを持つことはかなり簡単です。 –
いいえ私はコアデータを使用していません。私はこれまでのところデータベースを必要としませんでした。 – JheeBz
配列をテーブルから埋めるだけの場合は、plistまたはJSONを使用できます。 –