L'erreur «Cette classe n'est pas compatible avec le codage des valeurs de clé pour la clé» est un problème courant pour les développeurs iOS qui provoque le blocage d'une application dès son lancement. Lisez la suite pour trouver la solution à ce problème.
Cette erreur est souvent le résultat d'une connexion manquante entre un objet du storyboard et un IBOutlet du fichier de code. Un scénario courant qui en est la cause est lorsque vous créez accidentellement un IBOutlet inutile dans le code et que vous supprimez simplement la déclaration de la prise sans supprimer la connexion sur l'objet dans le storyboard. Pour les petits projets, il est facile de trouver et de supprimer la connexion problématique. Cependant, lorsque vous avez plusieurs objets dans un storyboard, trouver le bon peut prendre beaucoup de temps.
Lorsque votre application se bloque au lancement, vous verrez le message suivant dans la zone de débogage. Si la trace de la pile est longue, vous devrez faire défiler l'écran jusqu'en haut de la fenêtre pour la voir.
cette classe n'est pas conforme au codage par valeur de clé pour la clé
Voici comment trouver rapidement l’objet problématique à l’intérieur du storyboard sans passer manuellement en revue tous les éléments:
1. Copiez le texte juste après le message d'erreur générique. Le texte est en réalité le nom IBOutlet que vous avez supprimé du fichier de code et est unique pour votre projet.
corriger cette classe n'est pas compatible avec le codage de valeur de clé pour le problème clé
2. Ouvrez le panneau Navigateur, puis basculez vers le Onglet de recherche. Dans cet onglet, collez le texte dans le champ de recherche et appuyez sur Entrer.
3. Lorsque les résultats s'affichent, trouvez celui du fichier de scénario en commençant par le texte de la prise. Vous avez maintenant identifié avec succès la racine du problème.
Xcode 6 recherche une sortie problématique
4. Pour résoudre le problème, appuyez simplement sur le résultat pour ouvrir la section Connexions du panneau Utilitaires. Recherchez le point d’exclamation à la fin, puis cliquez sur le bouton Bouton X pour supprimer la connexion.
supprimer les points de vente problématiques dans Xcode
5. Réexécutez le projet pour vérifier que tout fonctionne comme prévu.