In Xcode gibt es eine neue automatische Vervollständigung. Wahrscheinlich könnte es nützlich sein, weil es nicht nur den Anfang von Namen usw. überprüft. Aber ich habe festgestellt, dass es sehr oft überhaupt keinen Klassennamen oder Konstantennamen usw. findet. Ich muss den gesamten Namen selbst eingeben. Insgesamt habe ich festgestellt, dass es mein Leben schwieriger und das Codieren zeitaufwändiger macht. Gibt es eine Möglichkeit, auf die alte Arbeitsweise umzusteigen?
autocomplete
xcode7.3
matthewfx
quelle
quelle
Antworten:
Xcode 7.3.1
Unter Xcode> Einstellungen> Textbearbeitung
Deaktivieren Sie
Enable type-over completions
Starten Sie Xcode neu
quelle
Es scheint, dass das Deaktivieren des Kontrollkästchens "Typ-Over-Abschlüsse aktivieren" in XCode -> Einstellungen -> Textbearbeitung den Trick macht. Zumindest in meinem Fall fiel die automatische Vervollständigung auf eine alte Art zurück, sodass der Klassenname, den ich zuvor manuell eingeben musste, automatisch vervollständigt werden konnte.
quelle
Dies ist keineswegs eine adäquate Lösung, ABER es hat mir ermöglicht, meine geistige Gesundheit in den letzten Tagen (kaum) aufrechtzuerhalten: Nach jedem Build müssen Sie Ihren Ordner für abgeleitete Daten in den Papierkorb werfen. Sie finden diesen Ordner in
Xcode > Preferences > Locations > Derived Data
. Wenn Sie das Ganze einfach in den Papierkorb werfen, wird ein Schritt zur erneuten Indizierung eingeleitet, mit dem die ordnungsgemäße Autovervollständigungsfunktion wiederhergestellt werden soll. Leider habe ich festgestellt, dass das Verhalten der automatischen Vervollständigung nach dem Erstellen in den fehlerhaften Zustand zurückkehrt.quelle
Öffnen Sie einfach den von Xcode abgeleiteten Datenordner und löschen Sie den Ordner
/Users/yourUserName/Library/Developer/Xcode/DerivedData
Starten Sie dann Xcode neu, jetzt funktioniert die automatische Vervollständigung wie ein Zauber
quelle
Ich habe den Eindruck, dass einige "Teile" der automatischen Vervollständigung einfach nach einer Weile fehlschlagen. Ich starte den Mac neu, damit er wieder funktioniert. Aber manchmal scheitert es ziemlich bald wieder. Vielleicht reicht die Antwort von @Alex Bykov in Kombination mit einem Neustart aus.
Wie auch immer: Die automatische Vervollständigung von Xcode war immer Mist. AppCode hat es früher viel besser gemacht. Leider noch nicht mit schnell.
quelle
Xcode geschlossen, Xcode geöffnet, indizieren lassen, es hat funktioniert.
quelle
Als Workaround können Sie versuchen, Befehl + Umschalt + K und Befehl + B mehrmals zu drücken. Dies funktioniert vorübergehend.
quelle
~/Library/Developer/Xcode/DerivedData
, OS X neu gestartet und es hat immer noch nicht geholfen. :-)Xcode 7.3.1
Ich werde einen weiteren möglichen Grund nennen, den wir nach ein paar Tagen herausgefunden haben. Wir haben mehrere Schemata, und in einem davon importierte der Bridging-Header eine Datei, die nicht mehr existierte. Es wurde also beim Kompilieren und Ausführen nicht unterbrochen (der Header gehört zu einem anderen Schema), aber die automatische Vervollständigung wurde unterbrochen (es konnte keine Objective-C-Klasse gefunden werden).
Hoffe es würde jemandem helfen!
quelle
Nachdem ich verschiedene Methoden ausprobiert habe:
Nur das hat funktioniert:
Gutschrift an Max_B: https://forums.developer.apple.com/thread/7439
In meinem Fall wurden andere Projekte automatisch korrekt abgeschlossen. Wenn alle Ihre Projekte den Code nicht richtig vorhersagen, liegt möglicherweise ein anderes Problem vor, und die anderen Antworten funktionieren möglicherweise.
quelle
Beim Versuch, eine OS X-App zu erstellen, ist dieses Problem aufgetreten. Ich konnte dieses Problem beheben, indem ich sicherstellte, dass die Xcode 7.3-Dokumentation und die OS X 10.11.4-Dokumentation tatsächlich heruntergeladen wurden. Dadurch wurde meine Autocomplete-Funktionalität vollständig wiederhergestellt. Meine vollständigen Anweisungen finden Sie unten sowie in meiner Antwort auf eine ähnliche Frage: https://stackoverflow.com/a/39420664/3444925
quelle
Ich bin erst darauf gestoßen, als ich ein paar neue Klassendateien erstellt habe. Andere Klassen funktionierten gut, aber die automatische Vervollständigung würde für nichts in den neuen Dateien funktionieren ...
UPDATE (für mich) - Ich musste diese Dateien ALLEN meinen Zielen hinzufügen, einschließlich der Unit-Test-Ziele, obwohl ich sie noch nicht verwendet habe.
quelle