【Swift】アプリ内にデータを保存できる「UserDefaults」の使い方

タイトルにもある通り、今回はアプリ内にデータを保存する時に使用する「UserDefaults」についてです。
データを保存したいけどデータベースに保存するほどではない、と言った時に使います。
イメージとしては、JavaScript の localStorage や Android(Java)の SharedPreferences とほぼ同じです。

今回参考にさせていただいた記事はこちらから。

【iOS】UserDefaultsをSwiftらしく使う – Qiita
https://qiita.com/KokiEnomoto/items/c79c7f3793a244246fcf

 

さて実装方法ですが、まずデータの保存は下記のように行います。

let userDefaults = UserDefaults.standard
userDefaults.set([保存したいデータ], forKey: "[キー名]")

なお、Swift 3 からメソッドが大きく変更になり、保存するデータの型を指定する必要が無くなったとのこと。
自動で保存したデータの型を確認し、適切に処理をしてくれるようになりました。

次にデータの取り出しです。

let userDefaults = UserDefaults.standard
userDefaults.string(forKey: "[キー名]")

取得するデータの型を指定する必要がありますので、間違えないようにご注意ください。
少し前までよく使っていた localStorage では、型の指定ができず全て文字列だったので、私が間違えそうです…。

最後に、データの削除は下記の通りです。

let userDefaults = UserDefaults.standard
userDefaults.removeObject(forKey: "[キー名]")

型にかかわらず、全てこちらのメソッドで削除できます。

 

以上、Swift の UserDefaults の使い方でした。
ご参考になれば幸いです。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG