ヒレガス本 第8章 ユーザ・デフォルト
- NSUserDefaultsクラスのクラスメソッドstandardUserDefaultsでデフォルトオブジェクトを得る。
- registerDefaultsでデフォルトを登録する。ユーザの設定は、setObject:forKey等で保存する。
演習問題はこんな感じ。
- (IBAction)resetPreferences:(id)sender { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults removeObjectForKey:BNRTableBgColorKey]; [defaults removeObjectForKey:BNREmptyDocKey]; }
最初、以下のようにしてみたら「全て」のキーが削除されてちょっとびびった。
- (IBAction)resetPreferences:(id)sender { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSEnumerator *e = [[defaults dictionaryRepresentation] keyEnumerator]; NSString *key; while (key = [e nextObject]) { NSLog(@"resetPreferences: %@", key); [defaults removeObjectForKey:key]; } }