J'ai créé une cellule personnalisée pour le chargement dans une table. L'interface est terminée et j'essaie maintenant de lier le xib et la classe.
La vue d'écran divisé est ouverte et j'essaie de contrôler l'élément de manière à ce que Xcode puisse établir la connexion à ma place. Lorsque je remplis le nom et que je clique sur Connecter, un message d'erreur s'affiche:
Impossible d'insérer une nouvelle connexion de sortie : Impossible d'insérer le code source dans le document à l'URL: //localhost/Users/Velox/Projects/CompanyName/ProjectName/ProjectName/HistoryCell.m car il ne contient pas de définition de classe pour le classe nommée HistoryCell.
J'ai défini la classe personnalisée de xib sur HistoryCell.
Qu'est-ce que j'oublie ici?
Merci.
Donc, il s'avère que j'étais un imbécile. Vous ne pouvez pas le faire comme ça avec Xcode. Si vous créez les propriétés manuellement dans le fichier d'en-tête, puis les synthétisez dans le fichier de classe, vous pouvez créer un lien en procédant comme suit:
Ouvrez le fichier xib Cliquez avec le bouton droit de la souris sur la cellule dans le panneau "Objets" Cliquez et glissez depuis les options ici vers les objets du xib.
C'est tout ce qu'il y avait à faire.
Ce problème semble être un bogue Xcode qui survient surtout lorsque vous remplacez un fichier par un nouveau fichier du même nom. Xcode semble conserver une référence de l'ancien fichier du même nom.
Quoi qu'il en soit, le moyen de remédier à cela semble être -
Nettoyer le projet
Cliquez sur <Votre projet> dans la vue Navigateur de projet. Accédez à Compiler les sources sous Construire les phases de la cible pour laquelle vous construisez. Supprimez et rajoutez le fichier .m qui vous pose problème.
Sinon, dans la vue File Inspector (vue Utilities) du fichier NIB, sous Target Membership, décochez et revenez sur le nom de la cible.
Redémarrez Xcode pour faire bonne mesure.
Bien sûr, supprimer et rajouter le fichier .m seul devrait également résoudre le problème.
Les étapes 1. et 2. sont seules à résoudre le problème pour moi . N'hésitez pas à demander si une étape doit être agrandie.
A bientôt et bon codage :)
J'ai résolu ce problème en supprimant le fichier .m (référence seulement), puis en le rajoutant au projet. Je pense que XCode est parfois corrompu (et je suis sur la dernière version 4.6).
https://stackoverflow.com/a/16166878/521946
Essayez de nettoyer votre projet et redémarrez Xcode.
S'il ne peut toujours pas être connecté, suivez la vue de navigation Utilities
de Xcode, dans la section Target membership
, décocher et cocher la case à cocher, cela fonctionnera. Peut-être devriez-vous reconstruire le projet après avoir décoché.
Il suffit d'aller au fichier .m
retirer
#import "calssName.h"
sauvegarder le fichier
rajouter du texte
#import "calssName.h"
sauvegarder le fichier
Dans mon cas, le n ° 1 a résolu le problème
Quittez XCode, puis purgez la dérivéeData en utilisant:
rm -rf ~/library/Developer/Xcode/DerivedData/*
Redémarrez XCode et connectez-vous.
Si vous voulez, créez un alias
alias purgeallbuilds='rm -rf ~/library/Developer/Xcode/DerivedData/*'
dans votre .bash_profile comme suggéré ici .
J'ai eu le même problème pour un viewcontroller qui a été enlevé accidentellement. J'ai lu des fichiers au projet mais ajouter Outlets en utilisant le fichier xib m'a donné l'erreur mentionnée. J'ai nettoyé le projet et redémarré XCode et tout a bien fonctionné.
Le problème pourrait être causé par d'autres erreurs. Construisez le programme, corrigez-le s'il y a des erreurs ou des avertissements. Ensuite, ctrl-glisser pour insérer à nouveau la prise et le problème disparaîtra.
J'ai eu le même problème avec Xcode 6.2. Dans ce cas, il suffisait de «toucher» la classe cible - en ajoutant et en supprimant quelque chose qui n'avait aucun sens - pour forcer une recompilation. La question a disparu alors.
tandis que les solutions supprimer et ajouter à nouveau semblaient fonctionner un peu. Heureusement, j'ai eu la même situation au début et je voulais un moyen facile de résoudre le problème, au cas où cela se produirait à la perfection. Il se trouve que vous construisez simplement le projet "Commande B" ou allez à Produit et allez à construire. Cela a bien fonctionné et a associé mon point de vue au fichier désigné.
J'ai utilisé xCode 7 et iOS 9.
dans ton .m
supprimer #import "VC.h"
économisez .m et reliez votre sortie à nouveau, cela fonctionne bien.
supprimez votre cellule personnalisée (cellule de table) et ajoutez-la sous un autre nom. Ça marche.
Une autre fenêtre de Xcode s’est ouverte pour un autre projet et le simulateur fonctionnait également. Je viens de fermer les deux et Produit-> Nettoyer mon application actuelle. Ça marche.
J'ai essayé "Produit> Nettoyer" puis "Produit> Dossier de génération propre" mais j'avais toujours des problèmes. Ensuite, j'ai simplement supprimé les fichiers .m et .h incriminés associés au contrôleur de vue qui me posait problème, créé de nouveaux fichiers .m et .h pour la classe de contrôleur de vue, réaffecté la nouvelle classe de contrôleur de vue à l'objet de storyboard problèmes avec, et tout a fonctionné.
Pour moi, le redémarrage de Xcode ne fonctionnait pas, je venais de supprimer l'objet et de le rajouter, puis de commencer à fonctionner.
Assurez-vous que l'indexation n'a pas été désactivée (c'était mon problème). Voici comment le réactiver à partir de la ligne de commande:
les valeurs par défaut écrivent com.Apple.dt.Xcode IDEIndexDisable 0
Cela a fonctionné dans mon cas. 1 créez un nouveau projet avec un nom différent 2 copiez et collez le fichier dessus 3 supprimez le fichier du premier projet 4 copiez et collez le fichier du nouveau projet dans le premier projet.
Il suffit de redémarrer le XCode. Cela a fonctionné pour moi.
J'ai le problème signalé en essayant d'ajouter une nouvelle cible Watch à un ancien projet, comme je l'ai fait avec succès à plusieurs reprises sur des projets vierges à la suite de tutoriels. J'ai essayé d'insérer un schéma de cible et de supprimer les fichiers, les cibles et les schémas, ainsi que de redémarrer Xcode et de supprimer plusieurs fois les fichiers dérivés. Mais chaque fois que je recrée la cible et que j'essaie d'activer l'Assistant-éditeur, il ne trouve aucun fichier correspondant dans le story-board principal. Si je le sélectionne manuellement puis que j'essaie de faire glisser un nouveau point de vente, l'erreur de l'affiche d'origine est générée. Que pourrait-il être d'autre? En fait, mon erreur est assez différente, comme vous pouvez le voir sur la capture d'écran .