I am coding in Swift and I want to set some values for certain keys in the UserDefaults.standardKeys
. However, I am trying to do a very simple thing but it doesn't work.
I want the name of the town (selectedTown) to be the value for the key "defaultsKeys.town" and the zip code of the town (selectedPC) to be the value for the key "defaultsKeys.postalCode". However, it seems that the value selectedPC overrides the value of defaultsKeys.town even if I assign it to defaultsKeys.postalCode. How is it possible?
Code:
let userDefaults = UserDefaults.standard
let selectedPC = Array(tableData.keys)[indexPath.row]
let selectedTown = tableData[selectedPC]!
userDefaults.set(selectedTown, forKey: defaultsKeys.town)
userDefaults.set(selectedPC, forKey: defaultsKeys.postalCode)
performSegue(withIdentifier: "goBackMenu", sender: nil)
My keys are defined in a swift file:
struct defaultsKeys {
static let keyOne = "name"
static let authentication = "false"
static let town = ""
static let postalCode = ""
}