回答編集履歴

1

使い方を追記

2020/04/15 07:48

投稿

MasakiHori
MasakiHori

スコア3384

test CHANGED
@@ -73,3 +73,53 @@
73
73
  }
74
74
 
75
75
  ```
76
+
77
+
78
+
79
+ ---
80
+
81
+ 追記
82
+
83
+
84
+
85
+ このUserDefaultsの使い方は
86
+
87
+
88
+
89
+ 保存
90
+
91
+ ```swift
92
+
93
+
94
+
95
+ let values: [hogeStruct] = ... //ここに保存対象が入っているとします
96
+
97
+
98
+
99
+ UserDefaults.standard.setEncoded(values, forKey: "KEY")
100
+
101
+ ```
102
+
103
+
104
+
105
+ 取り出し
106
+
107
+ ```swift
108
+
109
+ // Optional<[hogeStruct]>型になります。
110
+
111
+ let optionalValues = UserDefaults.standard.decodedObject([hogeStruct].self, forKey: "KEY")
112
+
113
+
114
+
115
+ // nilなら空の配列とする時
116
+
117
+ let values = UserDefaults.standard.decodedObject([hogeStruct].self, forKey: "KEY") ?? []
118
+
119
+
120
+
121
+ ```
122
+
123
+ 最初の引数に取り出す値の型に`.self`を付けたものを与えます。
124
+
125
+ これによってキャストなしに目的の型(のOptional型)で取得できます。