追記 2017/10/28
これのが簡単でいい
//定義
let defaults:UserDefaults = UserDefaults.standard
/保存
defaults.set("Totally True", forKey: "HasAppBeenOpenedBefore")
//出力
for (key, value) in UserDefaults.standard.dictionaryRepresentation() {
print("\(key) = \(value) \n")
}
説明
UserDefaults
は気軽にデータを永続化することができる便利な機能です。データベースを使うほどでもない永続化したいデータなどに活用されます。割と安易に実装が出来るのでお手軽で便利です。設定画面の実装などに使えますね。備忘録として、使い方をサラッと書き残しておくことにします。
step1 structを定義する
struct
に定義された定数に永続化される対象のデータが入ります。struct
の中に、データが保存されていると思っていいです。謂わば最初に定義されたstruct
の中の変数はデータを保存する箱です。
struct Constants {
static let TupacAmaruShakur = "Tupac "
static let NotoriousBig = "Biggie"
}
step2 変数を定義する
永続化したいデータの実態を保存する変数を定義しましょう。のちに出てくるset
メソッドでこの変数を使います。この変数をstruct
に保存する感じです。
var Tupac = "californialove"
var Biggie = "BigPoppa"
step3 セットする
準備ができたので値を永続化させてみましょう。先ほど定義した変数にStringの値を代入して、その変数をstructにセットしています。セットした時点でストラクとは永続化されています。
UserDefaults.standard.set(Tupac, forKey: Constants.TupacAmaruShakur)
UserDefaults.standard.set(Biggie, forKey: Constants.NotoriousBig)
step4 出力する
セットした値を取り出したければ下記のように書きます。print()
などでそのまま下記のコードをデバックしてみれば、保存したデータが出力されるはずです。
UserDefaults.standard.string(forKey: Constants.TupacAmaruShakur)
UserDefaults.standard.string(forKey: Constants.NotoriousBig)
Swift3 UserDefaults 覚え書き 其の二
// Create UserDefaults
let defaults = UserDefaults.standard
// Save String value to UserDefaults
// Using defaults.set(value: Any?, forKey: String)
defaults.set("Some string you want to save", forKey: "savedString")
// Get the String from UserDefaults
if let myString = defaults.string(forKey: "savedString") {
print("defaults savedString: \(myString)")
}