639 Stimmen

Xcode 6 Fehler: Unbekannte Klasse in Interface Builder Datei

Ich habe auf Xcode 6 Beta 4 aktualisiert und jetzt stürzt meine App kontinuierlich mit der Nachricht ab

Unbekannte Klasse X in der Interface Builder-Datei.

Es stürzt ab, weil Xcode angeblich meine benutzerdefinierten Klassen nicht finden kann, die ich in meinem Storyboard verknüpft habe, obwohl es zeigt, dass sie korrekt verknüpft sind in der Xcode-Oberfläche.

Ich bin sicher, dass alles korrekt verknüpft ist. Meine einzige andere Option könnte sein, die gesamte Storyboard-Datei zu löschen und von vorne zu beginnen, weil sie möglicherweise auf irgendeine Weise beschädigt ist.

Bearbeitung: Ich möchte auch hinzufügen, dass ich versucht habe, zu bereinigen, Simulator zurückzusetzen, mit Build-Phasen herumzuspielen, usw. Nichts davon funktioniert.

0voto

OnTwoWheels Punkte 11

In meinem Fall befanden sich die ViewController.h/m in einer Bibliothek. Das Projekt wird immer noch gebaut, aber seit Xcode 6.3 wurde der obige Fehler zur Laufzeit angezeigt. Das Verschieben beider Dateien zurück in das Projekt hat das Problem gelöst.

0voto

N R Punkte 1

Dies hat für mich funktioniert, als nichts anderes funktioniert hat. Vom Projektverzeichnis im Terminal:

[~/Developer/MyProject] grep -rn ViewController * | grep -i xib 

Öffnen Sie die übereinstimmenden Dateien als Quellcode in Xcode und ändern Sie alle Instanzen von ViewController in das, was Sie tatsächlich benötigen. In meinem Fall war die Datei, die ich als Quelle öffnen musste Main.storyboard und ich habe Instanzen von ViewController in DetailViewController geändert.

Ich habe zwei Dateien aus Xcode und main.storyboard gelöscht, was meiner Meinung nach das Problem verursacht hat, mit dem ich überhaupt angefangen habe.

0voto

Jippe Joosten Punkte 403

Ich hatte dasselbe Problem, aber nicht dieselbe Lösung.

Der Projektordner war irgendwie beschädigt, also musste ich meinen Projektordner in einen anderen Ordner kopieren, zum Beispiel auf deinen Desktop, und danach das Projekt öffnen.

Wenn es geöffnet ist, gehe zu deinem Interface Builder-Projekt und du wirst sehen, dass er dein Skript erkennt. Dann klicke tatsächlich auf den Namen deines Skripts und drücke die Eingabetaste, du wirst sehen, dass sich das Modul selbst ausfüllt.

Und es wird wie ein Zauber funktionieren! :D

0voto

aryaxt Punkte 73004

Es passierte mir, weil meine Klasse mit @objc markiert war und im Storyboard das Modul nicht gefunden werden konnte. Das Entfernen von @objc löste das Problem.

0voto

vvkuznetsov Punkte 986

Ich hatte ein Problem, als ich ein Projekt mit demselben Namen erstellte, das bereits in meinem Projektverzeichnis existierte (obwohl es vor einiger Zeit gelöscht wurde). Ich habe meine Lösung dort geschrieben https://stackoverflow.com/a/27763697/1654692

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X