L'errore "Questa classe non è la chiave di codifica del valore-compatibile per la chiave" è un problema comune per gli sviluppatori iOS che fa sì che un'app si arresti in modo anomalo al momento del lancio. Continua a leggere per scoprire la soluzione al problema.
Questo errore è spesso il risultato di una connessione mancante tra un oggetto nello storyboard e un IBOutlet nel file di codice. Uno scenario comune che provoca questo è quando si crea accidentalmente un IBOutlet non necessario nel codice e si elimina semplicemente la dichiarazione di uscita senza rimuovere la connessione sull'oggetto nello storyboard. Per i piccoli progetti, trovare e cancellare la connessione problematica è facile. Tuttavia, quando hai più oggetti in uno storyboard, trovare quello giusto potrebbe richiedere molto tempo.
Quando l'app si arresta in modo anomalo all'avvio, verrà visualizzato il seguente messaggio nell'area di debug. Se la traccia dello stack è lunga, sarà necessario scorrere fino alla parte superiore della finestra per vederla.
questa classe non è compatibile con la codifica del valore chiave per la chiave
Ecco come è possibile trovare rapidamente l'oggetto problematico all'interno dello storyboard senza passare manualmente attraverso tutti gli elementi:
1. Copia il testo subito dopo il messaggio di errore generico. Il testo è in realtà il nome IBOutlet che hai eliminato dal file di codice ed è unico per il tuo progetto.
Correggere questa classe non è la codifica del valore chiave conforme per il problema chiave
2. Aprire il pannello Navigatore e quindi passare a Scheda Cerca. In questa scheda, incolla il testo nel campo di ricerca e premi accedere.
3. Quando vengono visualizzati i risultati, trova quello nel file storyboard che inizia con il testo Outlet. Ora hai identificato correttamente la radice del problema.
Xcode 6 cerca sbocchi problematici
4. Per risolvere il problema, è sufficiente toccare il risultato per aprire la sezione Connessioni nel pannello Utilità. Trova l'uscita con il punto esclamativo alla fine e fai clic sul Pulsante X. rimuovere la connessione.
rimuovere l'uscita problematica in Xcode
5. Eseguire di nuovo il progetto per verificare che tutto funzioni come previsto.