UserDefaultsを便利に使う。Appleお勧め

Swift

UserDefaultsは、アプリケーションの設定を保存しておくのに非常に便利なものです。

非常に、シンプルで、再利用しやすいUserDefaultsの使い方を紹介します。

これまで

使うためには、キー値(String)が必要で、保存タイプの理解も必要です。

ですので、取得するときには、以下のように取得してると思います。

let saveData = UserDefaults.standard.string(forKey: "SaveData")

保存する時は、以下のような使い方。
UserDefaults.standard.setValue(saveData, forKey: "SaveData")

ちょっとしたアプリでは、上記のように使っているでしょう。

最初に思いつく改良点は、キー値を即値で使うのはよくないということでしょう。ですので、それをアプリケーションのstatic変数として定義したりすると思います。

WWDCで紹介されていた方法

UserDefaultsのextensionにする方法が、AppleのWWDCのビデオで紹介されていました。

extension UserDefaults {
  Private static let userDefaultKey = "key"
  @objc dynamic var keyData: String {
    get { return String(forKey: UserDefaults.userDefaultKey) }
    Set { set(newValue, forKey: UserDefaults.userDefaultKey) }
  }
}

これまでの使い方では、アプリ内に定義していましたが、よく考えるとUserDefaultsで定義する方が使い方に合っていると思います。

いわゆるswift的、それも非常に最初の段階のSwift的な使い方の紹介でした。

コメントを残す

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