NSUserDefaults non sembra funzionare per me in iOS8. Quando eseguo un semplice codice si blocca con questo errore indicando la linea con il setDouble
chiamata:NSUserDefaults standardUserDefaults non funziona in iOS8
filettatura 1: EXC_BAD_ACCESS (codice = 1, indirizzo = 0xffffffffc)
il codice:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool {
let defs = NSUserDefaults.standardUserDefaults()
defs.setDouble(2.5, forKey: "foo")
return true
}
Cosa sto sbagliando?
Dichiarare come var non lasciare. Let è costante, una volta che dichiari di non poterlo cambiare. – mohacs
Dispositivo o simulatore? Non riesco a riprodurre il problema su iOS 8 Simulator. –
@mohacs: 'let defs = ...' non dovrebbe essere un problema. 'defs' è un * tipo di riferimento * e non modificato chiamando un metodo sull'istanza. Vedi "Le classi sono tipi di riferimento" nel libro Swift. –