UserDefaults - shirai/SwiftLearning GitHub Wiki

NSUserDefaults

概論

目標

  • 概論を説明できる

わかったこと

  • Key-Value形式でデータを保存し、永続化するためのクラス
    • 主に設定値を永続化するために使われる
  • データの保存場所の管理はNSUserDefaultsオブジェクトがすべて行ってくれる
  • 実際のデータは ホーム/Library/Preferences 以下にプロパティリスト形式で保存される

つぎにやること

■課題アプリ4作成 ■学習まとめ作成

読み込み/書き込み

目標

  • 読み書きできる

わかったこと

対応メソッド一覧

|| オブジェクトの型 || 保存メソッド || 取得メソッド ||  || オブジェクト全般(id型 || setObject: forKey: || objectForKey: ||  || NSString || setObject: forKey: || stringForKey: ||  || NSArray || setObject: forKey: || arrayForKey: ||  || NSArray(文字列) || setObject: forKey: || stringArrayForKey: ||  || NSDictionary || setObject: forKey: || dictionaryForKey: ||  || NSData || setObject: forKey: || dataForKey: ||  || NSInteger || setInteger: forKey: || integerForKey: ||  || float || setFloat: forKey: || floatForKey: ||  || double || setDouble: forKey || doubleForKey: ||  || BOOL || setBool: forKey: || boolForKey: ||  || NSURL || setURL: forKey: || URLForKey: || 

使用方法

  • 保存・更新 NSArray *array = @[@"http://www.apple.com", @"http://www.9revolution9.com", @"https://twitter.com/"]; //NSUserDefaultsの取得 //NSUserDefaultsが存在しない場合は作成 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; //NSUserDefaultsにデータを保存 [defaults setObject:array forKey:@"bookmarks"]; //NSUserDefaultsに即時反映させる [defaults synchronize];

  • 取得 //NSUserDefaultsの取得 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; //NSUserDefaultsに保存したデータの取得 NSArray *array = [defaults arrayForKey:@"bookmarks"];

つぎにやること

■課題アプリ4作成 ■学習まとめ作成

参考

NSUserDefaults を使ったデータの保存方法 NSUserDefaults-iPhoneアプリ開発の虎の巻