Ich führe ein "altes" Xcode 3-Projekt in Xcode 4 aus und Code Sense funktioniert nicht für meine eigenen Klassen. Ich habe folgendes versucht:
- Reinigen / umbauen
- Abgeleitete Daten entfernen
- 4.3 Dokumentation installieren
- Neustart
Ohne Glück.
Manchmal funktioniert der Code-Sinn, aber meistens bekomme ich nur "Keine Vervollständigungen".
Fixed a bug that prevented indexing of some projects
Versionshinweise klingen so, als ob sie mit Ihrem Problem zu tun haben könnten.Antworten:
Versuche dies:
Öffnen Sie den Organizer und dann die Registerkarte Projekt.
Löschen Sie die "Abgeleiteten Daten". Xcode sollte dann Ihr Projekt neu indizieren und Code Sinn sollte funktionieren. Zumindest für mich gearbeitet.
quelle
Ich weiß, dass dies spät ist, aber als Referenz: http://sealedabstract.com/code/when-xcode-4s-code-completion-autocomplete-breaks/
Dort wird viel gelöscht, seien Sie also bitte vorsichtig, aber das hat definitiv bei mir funktioniert.
quelle
Ich habe dies getan und es hat mehrmals für mich funktioniert (nachdem ich zuvor alle oben genannten Versuche unternommen habe).
Bearbeiten: Jetzt drücke ich einfach auf Leertaste, Rücktaste (die Mac-Version) und erstelle neu ... funktioniert gut. Denken Sie dann daran, zu scrollen (manchmal werden die Farben erst angezeigt, wenn Sie irgendwo scrollen).
Ich wette, nur Schritt 2 (Ändern des Präfixes) ist das, was es tut, aber diese bringen Sie im Wesentlichen wieder zum Laufen. Plötzlich färbt sich alles auf magische Weise neu und vervollständigt Funktionen.
Viel Glück, wenn das nicht funktioniert, versuchen Sie vielleicht, dies mit Ihren Abhängigkeits-PCH-Dateien (Three20 oder FB-APIs) zu tun.
quelle
Das Löschen der "abgeleiteten Daten" funktioniert nur vorübergehend für mich. Ich muss es tun und dann Xcode wie 3-4 mal täglich neu starten, damit der Code-Sinn wieder funktioniert.
Ich habe herausgefunden, dass die wahre Ursache in den Build-Einstellungen des Ziels liegt. Ich habe alles von Header-Suchpfaden zu Benutzer-Header- Suchpfaden verschoben und es ist behoben. In meinem Fall ist das Framework, mit dem ich arbeite, RestKit.
Übrigens, ich habe mir das ausgedacht, weil ich meinem Projekt ein anderes Projekt ( QuickDialog ) hinzugefügt habe und ich war neugierig, dass es Benutzer-Header-Suchpfade verwendet , aber keine Header-Suchpfade . Hier ist der Unterschied zwischen ihnen.
quelle
Sie können dieses Problem beheben, indem Sie die Build-Einstellungen wie folgt ändern : PreCompile Prefix Headers: NO
quelle
Zu Ihrer Information: Wenn eine Datei keinen Code-Sinn hat, der Rest Ihres Projekts jedoch, überprüfen Sie, ob sie einem Ziel hinzugefügt wurde. Sobald ich das getan habe, habe ich wieder Code-Sinn in dieser Datei.
quelle
Es ist schon lange her, aber die Antwort ist nur, den Code in einen neuen Ordner zu verschieben, und der Code-Sinn sollte jetzt funktionieren.
Dies geschah, als ich eine neue Objective-C-Klasse hinzufügte und der Code-Sinn nicht nur für die neu hinzugefügten .m- und .h-Dateien funktioniert (bei XCode 4, dem neuesten Update in diesem Beitrag).
quelle
quelle
Ich habe hier ausführlich darüber geschrieben .
Grundsätzlich war mein Fix das mit Lokalisierung. Ich habe ein Upgrade von xcode 3.2.5 auf xcode 4 durchgeführt und dann mit dem integrierten Interface Builder herumgeschraubt und versehentlich die Lokalisierung für eine XIB-Datei aktiviert, wodurch meine Quelldateien im Verzeichnis en.lproj abgelegt wurden. Nachdem sie wieder in den Klassenordner verschoben wurden, funktionierte es perfekt.
quelle
Wiederum, um anderen bei diesem Problem zu helfen, das in meinem Fall beim Upgrade auf Xcode 4.3 aufgetreten ist.
Natürlich habe ich die in diesem Beitrag angebotenen Lösungen ausprobiert, und keine davon hat funktioniert. Der Vorschlag, den Standort des Projekts in Finder zu verschieben, brachte jedoch Code Sense zurück, aber die Vorschläge ergaben keinen Sinn. Am Ende habe ich mein Projekt gelöscht und es erneut aus dem Git-Repository geklont. Das hat Code Sense für mich zurückgebracht ...quelle
Ich öffne ein zweites Projekt im Hintergrund, wenn die Codeerkennung meines Xcodes nicht mehr funktioniert (normalerweise funktioniert sie beim ersten Öffnen des Projekts, aber nach einer Weile funktioniert die Codeerkennung nicht mehr). Also öffne ich ein zweites Projekt in Xcode. Xcode beginnt mit der Indizierung des zweiten Projekts und auf magische Weise ist der Code-Sinn für mein Hauptprojekt zurück.
Ausführen von Xcode 4.3.1 unter Lion
Hoffe das hilft jemandem.
quelle
Aufgrund dieses Kommentars hier konnte ich das Problem an meinem Ende debuggen. Es schien ein schlechtes Flag zu sein, das der Clang-Präprozessor nicht richtig erkannte. Grundsätzlich läuft
defaults write com.apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3
in Terminal erhöht die Ausführlichkeit des Indexers und soll Ihnen helfen, Probleme aufzuspüren. Öffnen Sie Console.app und suchen Sie nach Nachrichten von Xcode. Die Suchzeichenfolge
IDEIndexingClangInvocation
hat mir geholfen, sie zu finden.quelle
Für mich geschah dies einfach, weil die Datei keine Zielmitgliedschaft hatte. Wenn die ersten Antworten bei Ihnen nicht funktioniert haben, gehen Sie zu Ihrer .m-Datei (vermutlich ist es diese Datei, mit der Sie Probleme haben), öffnen Sie die Ansicht Dienstprogramme (Bearbeiten -> Dienstprogramme -> Dateiinspektor anzeigen) und klicken Sie unter "Ziel" auf "Ziel" Mitgliedschaft "Überprüfen Sie das Ziel, zu dem diese Datei gehören soll.
quelle