2016-09-15 18 views
2

これはバグのようです。お手伝いください。私は既定値の既存の値を削除しようとしています。私は、8/iOS版10/iPhoneシミュレータ7 Xcodeで実行していますXCode 8/Swift 3 UserDefaults.standard set nilエラー

val=Optional(<62706c69 73743030 d4010203 04050608 09582476 65727369 6f6e5824 6f626a65 63747359 24617263 68697665 72542474 6f701200 0186a0a1 0755246e 756c6c5f 100f4e53 4b657965 64417263 68697665 72d10a0b 54726f6f 74800008 111a232d 3237393f 51545900 00000000 00010100 00000000 00000c00 00000000 00000000 00000000 00005b>) 

-

UserDefaults.standard.set(nil, forKey: "test-me") 
let val = UserDefaults.standard.object(forKey: "test-me") 
print ("val=\(val)") 

は、私は次の出力を得ました。

+0

やったときに、[この質問](http://stackoverflow.com/questions/39515942/xcode-8-swift-3-ios-10-saving-nsdate-error)しかし、説明と解決策の両方が間違っています... –

答えて

6

他の投稿のRobからのコメントが正しいように見えます。値を "nil"に設定すると、NSDataとして保存されます。キーを削除するには、代わりにこれを試してください:あなたは、おそらく「nilを」取り戻すだろう

UserDefaults.standard.removeObject(forKey: "test-date") 

私はもともと投稿object(forKey: "test-date")

+0

ありがとう!何とか、私はremoveObject APIを見ていませんでした。 –

関連する問題