BEARBEITEN: Das ist seltsam ... Wenn ich im Begrüßungsbildschirm auf das Element "Letzte Projekte" für das Projekt doppelklicke, funktioniert die Codeerkennung und -färbung einwandfrei, aber wenn ich nur auf Open
(unten rechts im Begrüßungsbildschirm) klicke, funktioniert dies nicht. Das Öffnen von File > Recent projects
funktioniert auch nicht und das Doppelklicken auf die .xcodeproj
Datei im Finder funktioniert auch nicht .
Code Sense für ein iPhone OS 3.0-Projekt, an dem ich seit mehreren Monaten arbeite (durch verschiedene Installationen / Versionen von XCode), funktioniert nicht mehr. Wenn ich das tue NSString *myString
, wäre der gesamte Code beispielsweise schwarz (keine Färbung, keine Option + Doppelklick, keine Code-Vervollständigung). Code Sense "funktioniert" nur für meine eigenen Klassen / Methoden / Eigenschaften, jedoch nicht für eine der SDK-Klassen. Wenn ich ein neues Projekt von Grund auf neu erstelle, funktionieren all diese Funktionen.
Ich habe bereits versucht, das "Basis-SDK für alle Konfigurationen" in diesem Projekt zu ändern. Ich habe bereits versucht, "Code Sense Index neu zu erstellen". Ich habe bereits "Alle Ziele bereinigen" ausprobiert.
Die Dokumentation in den Einstellungen wird heruntergeladen und funktioniert. Wenn ich zum Beispiel das NSString
Obige auswähle und mit der rechten Maustaste -> Text in der Dokumentation suchen, erhalte ich das Fenster mit allen Verweisen auf die Klasse.
Alle Ideen werden sehr geschätzt.
Antworten:
Holen Sie sich Informationen zum Projekt in Xcode und ändern Sie das Projektformat so, dass es mit der von Ihnen verwendeten Version von Xcode übereinstimmt (zum jetzigen Zeitpunkt "Xcode 3.2-kompatibel").
Sie können die abgeleiteten Daten auch löschen, aber wenn Sie Ihr Projektformat nicht aktualisiert haben, tritt der Fehler fast sofort wieder auf. (Es kann sogar nach dem Aktualisieren Ihres Projektformats passieren, aber ich musste DerivedData früher mehrmals am Tag löschen, und ich glaube, ich habe es seit dem Reparieren des Projekts nur einmal gemacht.)
Wie an anderer Stelle erwähnt, kann der Wechsel zu LLVM hilfreich sein. Aber wenn ich diese Antwort (2012) aktualisiere, sollten Sie trotzdem LLVM verwenden.
quelle
In Xcode 4 konnte ich auch keine Schaltfläche "Code Sense neu erstellen" finden. Wenn Sie jedoch zu "Fenster -> Organizer" wechseln, wählen Sie die Registerkarte "Projekt" und klicken Sie neben dem Ordner "Abgeleitete Daten" auf "Löschen ..." scheint es den gleichen Effekt zu haben. (Ich habe diesen Tipp von http://blog.slidetorock.com/xcode-4-code-sense-autocompletion-problems erhalten , was darauf hinweist, dass er wiederum von /programming/2138047/xcode abgerufen wurde -code-verliert-Syntax-Färbung - aber ich sehe es in keiner der Antworten dort. Sehr neugierig.)
quelle
Die Syntaxfärbung funktioniert wieder, nachdem ich die folgenden Schritte ausgeführt habe:
PS
quelle
Führen Sie es bei Bedarf jedes Mal im Terminal aus
rm -fR ~/Library/Developer/Xcode/DerivedData
Funktioniert gut. Hervorheben und Codesense zurück zu mir! Irgendwann benötigt Make Clean, damit es funktioniert.
Hinweis: Wie ich sehe, werden Snapshost und andere Xcode4-Funktionen entfernt. Aber wir benutzen es nicht :)
quelle
Ich hatte das gleiche Problem in Xcode 4 und löste es, indem ich den Compiler von GCC 4.2 auf LLVM GCC 4.2 änderte.
quelle
Ich habe einen Weg gefunden, diesen Fehler zu vermeiden. Ich habe gesehen, dass der Fehler jedes Mal auftritt, wenn ich eine Datei ändere, die in die Datei prefix.pch importiert wird.
Versuchen Sie, Ihre eigene Datei oben in der importierten Liste über UIKit.h und Fonudation.h zu importieren und NICHT am Ende, wie es jeder tut.
In meiner Datei prefix.pch:
#ifdef __OBJC__ #import "myFile.h" #import <UIKit/UIKit.h> #import <Foundation/Foundation.h> #endif
quelle
Es scheint eine Vielzahl von vorgeschlagenen Ursachen und Lösungen für dieses Problem zu geben, und ich glaube, ich habe die meisten davon ausprobiert. Was für mich (in Xcode 4.1) schließlich funktioniert hat, war:
Code Sense wiederhergestellt.
Um genau zu sein, ist mein genaues Problem, wenn ich eine neue Klasse per Rechtsklick im Projektnavigator erstelle, dass etwa 30 - 40% des Timecode-Sinns in der Header-Datei der neuen Klasse nicht funktionieren. Interessanterweise funktioniert es in der Implementierung.
Dinge, die ich ausprobiert habe und die fehlgeschlagen sind:
Ich würde gerne andere mögliche Vorschläge machen, um diesem Problem ein Ende zu setzen, denn es ist wirklich ärgerlich!
quelle
Ich hatte auch dieses Problem. Ich hatte zuvor die Indizierung deaktiviert, um die Xcode-Operationen zu beschleunigen, und wusste zu diesem Zeitpunkt nicht, dass dadurch ein Teil der Code-Hervorhebung gestoppt werden würde. Wenn Sie dies getan haben, können Sie die Indizierung wieder aktivieren, indem Sie dies im Terminal eingeben:
defaults write com.apple.dt.XCode IDEIndexDisable 0
Wenn Sie die Indizierung deaktivieren möchten, geben Sie dies in das Terminal ein:
defaults write com.apple.dt.XCode IDEIndexDisable 1
quelle
Hatte die gleichen Probleme in Xcode 4.0.2. Code Sense funktionierte in allen bis auf zwei Dateien, einer .m-Datei und der entsprechenden .h-Datei. Ich habe alles versucht - außer den Code-Sense-Index neu zu erstellen, da ich die Schaltfläche nirgendwo finden konnte - nichts hat funktioniert. Am Ende habe ich die korrelierten Dateien, .m, .h und .xib gelöscht. Neue Dateien erstellt, jetzt funktioniert alles wie erwartet.
quelle
Zusätzlich zu dem, was ich getan habe, musste ich auf die Schaltfläche "Code Sense Index neu erstellen" klicken. Es befindet sich unten auf der Registerkarte "Allgemein" in "Informationen abrufen" des Projekts.
quelle
Wenn Sie feststellen, dass dies nur bei einigen Ihrer Dateien der Fall ist, stellen Sie sicher, dass die .m-Datei Mitglied Ihres Ziels ist.
quelle
Syntaxfärbung, automatische Vervollständigung, Springen zu Header-Dateien usw. sind für mich seit XCode4 völlig kaputt. Meine Symbolnavigatoransicht ist vollständig leer. Hatte nicht bemerkt, wie abhängig ich von der automatischen Vervollständigung geworden war, ist meine Produktivität um einen Faktor gesunken. Seltsam ist, dass meine Teamkollegen verschiedene Kombinationen fehlender Funktionen sehen - nur ich habe das Glück, alles verloren zu haben. FWIW Ich bin auf der neuesten Generation MBP.
quelle
Ich hatte genau das gleiche Problem, aber keines der oben genannten Probleme hat bei mir funktioniert. Am Ende musste ich xcode go to öffnen
File>Open Recent> Clear Menu
Dies hat das Problem für mich behoben. Es scheint, dass beim Importieren eines Github-Projekts, das meinen Code-Sinn nach dem Löschen der letzten Elemente und dem erneuten Öffnen des Projekts durcheinander gebracht hat, alles einwandfrei funktioniert hat.
quelle
Ich hatte dieses Problem nur bei einer meiner .m-Dateien, und nachdem ich viele der oben genannten Dinge ausprobiert hatte, stellte sich heraus, dass XCode irgendwann die .m-Erweiterung entfernt hatte. Es wurde im Projektnavigator immer noch als "Myclass.m" aufgeführt, aber wenn Sie mit der rechten Maustaste darauf klicken und "Im Finder anzeigen" auswählen, wurde die Datei nur "Myclass" genannt (und seltsamerweise im Unterordner "en.lproj" abgelegt!).
Das Entfernen der Referenz aus dem Projektnavigator, das Umbenennen und Verschieben der Datei und das erneute Hinzufügen zum Projekt hat mein Problem behoben.
quelle
quelle
Was für mich funktioniert hat, war die Änderung des Compilers auf "LLVM Compiler 2.0".
quelle
Code Sense funktionierte für die meisten Dateien mit Ausnahme von 3 oder 4 .m / .h-Dateien. Ich habe alles oben versucht, und das einzige, was für mich funktioniert hat, war die Lösung von drct. Ich habe xCode geschlossen, das Projekt in einen anderen Ordner verschoben und erneut geöffnet.
Ich finde jetzt, wenn ich mit der rechten Maustaste auf einen Ordner (oder eine Gruppe) im Projektnavigator klicke und "Neue Datei" auswähle. Code Sense funktioniert nicht.
Wenn ich stattdessen das Hauptmenü verwende und 'Datei >> Neu >> Neue Datei' auswähle, funktioniert die Codeerkennung einwandfrei.
quelle
Eine Sache, auf die ich heute gestoßen bin und die sich auf die Code-Färbung auswirkte, ist, dass ich versehentlich eine Header-Datei (.h) unter Ziel -> Phasen erstellen -> Quellen kompilieren hinzugefügt habe. Einmal entfernt, kam die Codefarbe auf magische Weise zurück :)
quelle
Manchmal verhindert das Hinzufügen mehrzeiliger Kommentare am Ende der @ end-Anweisung im Code die automatische Vervollständigung in Xcode 6.0.1. Ich hatte das gleiche Problem. Probieren Sie es einfach aus ..
quelle
Warum ich wieder glücklich bin :)
Ich hatte dieses Problem, aber einige Tage bevor ich den XCode-Indizierungsprozess deaktivierte.
Es wurde behoben, indem dieser Befehl in das Terminal eingefügt wurde. Ich hoffe es hilft jemandem.
defaults write com.apple.dt.XCode IDEIndexDisable 0
Und ja, ich benutze Xcode 7.0
quelle
In meinem Fall hat nur eine .m-Datei dieses Problem. Die automatische Vervollständigung wird einwandfrei angezeigt, zeigt jedoch nicht alles an. Wenn ich zum Beispiel "NS" eingebe, wird die automatische Vervollständigung nur mit "NSMutableDictionary" angezeigt und es gibt nichts anderes! Ich habe alles versucht, habe 1 Stunde lang überall gesucht, aber nichts hat es behoben.
Dann habe ich aus Neugier einen Kommentarblock gelöscht, den ich zuvor am Ende der .m-Datei eingefügt habe (unter dem Wort @end). Nachdem dies gelöscht wurde, funktioniert die automatische Vervollständigung wieder wie gewohnt!
Hier ist der Täter:
Wenn Ihre automatische Vervollständigung nur für eine Datei fehlschlägt, sollten Sie dies überprüfen und alles unter @end word löschen.
quelle
Versuchen Sie, die XCODE-IDE zu schließen und zu öffnen.
quelle
Denn jemand weiß immer noch nicht warum. Öffnen Sie mit XCode 8.2 Arbeit für mich. Der neueste XCode scheint dieses Problem zu haben
quelle