Я восстанавливаю состояние своего приложения и сохраняю несколько переменных, используя NSCoder в Xcode 10.1. NSCoder хорош для хранения строк и других типов переменных, но не позволяет мне хранить Doubles. Я перепробовал множество сценариев, но мне просто не нравятся двойники!
Если я конвертирую double в строку, это будет работать. Я пробовал как? Double ', и это все еще возвращает ноль. Есть идеи, почему я просто не могу использовать Double?
override func encodeRestorableState(with coder: NSCoder) {
...
// Both don't work:
coder.encode(myDoubleVariable, forKey: "Length")
coder.encode(1.2345252, forKey: "Length")
}
override func decodeRestorableState(with coder: NSCoder) {
...
// Both don't work:
myDoubleVariable = coder.decodeObject(forKey: "Length")
myDoubleVariable = coder.decodeDouble(forKey: "Length")
}