【NSUserDefaults】データの保存

小さなゲームの得点などを保存しておくにはNSUserDefaultsが良さそうです。

参考にさせて頂いたサイト。
NSUserDefaults – iPhoneアプリ開発の虎の巻
逆引きObjective-C for iPhoneアプリ – ユーザーデフォルトの基本的な使い方

// NSUserDefaultsの取得
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];

とかくと、NSUserDefaultsがあれば出してくれるし、なければ作ってくれるという有難い。

で、セーブとロードを作ってみた。

#pragma mark - セーブとロード

- (void)save{
    // NSUserDefaultsの取得
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    // データの保存処理
    [defaults setInteger:recordCount forKey:@"record"];//レコードを保存
    [defaults setInteger:totalCount forKey:@"total"];//トータルを保存
    [defaults synchronize];
}

- (void)load{
    // NSUserDefaultsの取得
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    
    // データの取得
    recordCount = (int)[defaults integerForKey:@"record"];//レコードを取り出す
    totalCount = (int)[defaults integerForKey:@"total"];//トータルを取り出す。
    
    _recordHyouji.text = [NSString stringWithFormat:@"%04d",recordCount];//それぞれ表示
    _totalHyouji.text = [NSString stringWithFormat:@"%05d",totalCount];

}

起動した時などviewDidLoadでloadメソッドを
保存したいタイミングでsaveメソッドを呼び出すと良い感じです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です