Hur löser jag problemet "Denna klass är inte nyckelvärdekodning -kompatibel för nyckeln" i Xcode 6?

Felet "Den här klassen är inte nyckelkodningskompatibel för nyckeln" är ett vanligt problem för iOS-utvecklare som orsakar att en app kraschar direkt vid starten. Läs vidare för att få reda på lösningen på problemet.

Detta fel är ofta resultatet av en saknad koppling mellan ett objekt i storyboardet och en IBOutlet i kodfilen. Ett vanligt scenario som orsakar detta är när du av misstag skapar en onödig IBOutlet i kod, och du tar bara bort försäljningsdeklarationen utan att ta bort anslutningen på objektet i storyboardet. För små projekt är det enkelt att hitta och ta bort den problematiska anslutningen. Men när du har flera objekt i en storyboard kan det hända att det är mycket tid att hitta rätt.

När din app kraschar vid start kommer du att se följande meddelande i felsökningsområdet. Om stackspåret är långt måste du rulla hela vägen till toppen av fönstret för att se den.

den här klassen är inte nyckelkodningskompatibel för nyckeln

Så här kan du snabbt hitta det problematiska objektet inne i storyboardet utan att manuellt gå igenom alla element:

1. Kopiera texten direkt efter det generiska felmeddelandet. Texten är faktiskt det IBOutlet-namn som du raderade från kodfilen och är unik för ditt projekt.

fixa den här klassen är inte nyckelkodningskompatibel för huvudproblemet

2. Öppna Navigator-panelen och växla sedan till Sök flik. Klistra in texten i sökfältet i den här fliken och tryck på Stiga på.

3. När resultaten dyker upp, hitta den i storyboard-filen som börjar med Outlet-texten. Nu har du identifierat roten till problemet.

Xcode 6 letar efter problematiskt uttag

4. För att åtgärda problemet, klicka helt enkelt på resultatet för att öppna avsnittet Anslutningar på panelen Verktyg. Hitta utloppet med utropstecken i slutet och klicka på X-knappen för att ta bort anslutningen.

Ta bort problematiskt uttag i Xcode

5. Kör projektet igen för att verifiera att allt fungerar som förväntat.