アプリケーション作成の際に使った、NSUserDefaultsクラスについての忘備録です。
NSUserDefaultsクラス
アプリケーションの設定値を保存して、次回起動時になどに使えるクラスがNSUserDefaultsです。値の保存と、読み出しはstandardUserDefaultsクラス・メソッドに対して行います。
保存、読み出しの際にはキーを目印にして行います。辞書のラベルみたいなものですかね。
データの保存。
NSInteger型の値をtestというキーで保存する場合は次のようになります。
NSUserDefaults *myValue = [NSUserDefaults standardUserDefaults]; [defaults setInteger:8 forKey:@“test”];
また、保存する型によりメソッドは異なります。
- setBool:forKey: BOOL
- setFloat:forKey: float
- setInteger:forKey: Integer
- setObject:forKey: id
- setDouble:forKey: double
- setURL:forKey: NSURL
保存したデータの読み出し
保存したデータはintegerForKey: メソッドでキーを指定することにより読み出されます。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSInteger myValue = [defaults integerForKey:@“test”];
保存と同様に読みだす型により、メソッドは異なります。
- arrayForKey: NSArray
- boolForKey: BOOL
- dataForKey: NSData
- dictionaryForKey: NSDictionary
- floatForKey: float
- integerForKey: NSInteger
- objectForKey: id
- stringArrayForKey: NSArray(値がNSstringのみ)
- stringForKey: NSString
- doubleForKey: double
- URLForKey: NSURL
保存のタイミング
インスタンスdefaultsに設定した値は自動で定期的にサンドボックスに保存されますが、synchronizeメソッドを実行すれば、即座に保存されます。
詳細! Objective-C iPhoneアプリ開発 入門ノート Xcode5+iOS7対応
- 作者: 大重美幸
- 出版社/メーカー: ソーテック社
- 発売日: 2013/11/02
- メディア: 単行本
- この商品を含むブログを見る