Swift/Class/UserDefaults

Revision as of 17:20, 7 November 2022 by imported>Fire
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

ユーザデータを保存するためにシンプルなインタフェースを提供する。サイズ制限があるため大きなデータを保存する場合は、CoreDataを使った方がいい。パスワード等のセキュリティデータは、KeyChaiin格納が推奨。

UserDefaults
TypeClass
iOS2.0+
iPadOS2.0+
macOS10.0+
MacCatalyst13.0+
tvOS9.0+
watchOS2.0+
Websitedeveloper.apple.com/documentation/foundation/userdefaults/

格納できる型は、object, url、array、dictionary, string, stringArray, data, bool, integer, float, double。Struct等で定義した型は、変換して対応した型に変換する必要がある。

書き込み、更新方法

UserDefaults.standard.set("value", forKey: "key")

読み出し方法

//汎用Object
UserDefaults.standard.object(forKey: "key")-> Any?
//url
UserDefaults.standard.url(forKey:"key")-> URL?
//array
UserDefaults.standard.array(forKey: "key")-> [Any]?
//Data
UserDefaults.standard.dictionary(forKey: "key") -> [String : Any]? 
//String
UserDefaults.standard.string(forKey: "key") -> String?
//String Array
UserDefaults.standard.stringArray(forKey: "key") -> [String]?
//Data
UserDefaults.standard.data(forKey: "key")-> Data?
//Bool
UserDefaults.standard.bool(forKey: "key") -> Bool  
//Int
UserDefaults.standard.integer(forKey: "key") -> Int                 
//Float
UserDefaults.standard.float(forKey: "key") -> Float                 
//Double
UserDefaults.standard.double(forKey: "Double") -> Double

削除方法

UserDefaults.standard.removeObject(forKey: "key")

保存されている内容の出力

UserDefaults.standard.dictionaryRepresentation()

SEE ALSO

CoreData, KeyChaiin, CloudKit

External Link