2015-10-09 8 views
44

Ich habe eine neue Cocoa Touch-Datei erstellt. Benannte es SwipingViewController. enter image description hereXcode 7.1 Swift 2 Unbekannte Klasse in der Interface Builder-Datei

Dann versuchen, benutzerdefinierte Klasse zu ViewController hinzuzufügen.

Und wenn ich die app laufen bekomme ich einen Fehler

2015-10-09 10: 53: 25,054 ParseStarterProject [5369: 389.307] Unbekannte Klasse SwipingViewController in Interface Builder-Datei.

Unknown class SwipingViewController in Interface Builder file

Verwandte: Xcode 6 Strange Bug: Unknown class in Interface Builder file

Hier ist meine projects files

Antwort

120

Im Storyboard unter dem Feld Kundenspezifische Klasse das Modul auf None gesetzt ist. Ändern Sie diese in Ihrem App-Modul oder einfach entfernen und geben Sie Klasse wieder, es sollte wie folgt auf Standard gesetzt:

+0

danke. Das löst das Problem. Aus irgendwelchen Gründen habe ich das nicht - Current - Parse Project. Ich lade meinen Mac neu und vielleicht hilft das auch. –

+0

Danke, es hat geholfen, wenn man zu einem älteren Projekt zurückkehrt. – igraczech

+2

Immer noch beim Einrichten eines neuen Projekts in XCode 8.3.2 (Modul wurde auf None gesetzt). Aber dein Vorschlag funktioniert. –

0

ich dieses Problem gelöst durch View-Controller initialisieren Anwendung. View-controller basic declaration of view lud die Methode und Klassenimplementierung in * .swift Klassen-Shows im Storyboard.

10

Noch sieht dieses Problem mit XCode 8.2.1, aber ich bin in der Lage, das Problem zu beheben, indem Sie diese in der Storyboard-XML-Datei ändern:

  1. löschen customModuleProvider="target" im Viewcontroller tag:

    - <viewController ... customModule="Flights" customModuleProvider="target" sceneMemberID="viewController"> 
    + <viewController ... customModule="Flights" sceneMemberID="viewController"> 
    
  2. löschen customModule="Flights" customModuleProvider="target" im Widget-Tag (in meinem Fall ein Etikett Tag):

    - <label ... translatesAutoresizingMaskIntoConstraints="NO" id="PzF-6K-Hpi" customClass="YZLabel" customModule="Flights" customModuleProvider="target"> 
    + <label ... translatesAutoresizingMaskIntoConstraints="NO" id="PzF-6K-Hpi" customClass="YZLabel"> 
    

Ich finde, dass Schritt 1 auch sehr wichtig ist, den Absturz/Warnung zu lösen und nicht übersprungen werden kann.

+2

danke, dass Sie meinen Tag speichern Ich muss nur hinzufügen: customModule = "ObjProject" customModuleProvider = "Ziel" –

14

Für mich war das Problem, dass die Klasse nicht Teil der Target Membership war. Fügen Sie einfach die Klasse zum Ziel hinzu, und Sie sollten es auf dem Interface Builder wieder sehen.

Target Membership

1

beschloß ich ein ähnliches Problem von '-ObjC' auf 'Anderen Linker-Flags' in den 'Build Settings' von meinem Projekt hinzufügen.

1

Ich hatte ein ähnliches Problem. Ich hatte einen ViewController mit einem TableView, und die benutzerdefinierte Klasse der TabelleView hieß "ViewController". Ich löschte gerade die benutzerdefinierte Klasse für die TableView und der Fehler ging weg.

+0

Danke. Ich habe es mit deiner Methode gelöst. Ich habe versehentlich "MyCustomViewController" zu der benutzerdefinierten Klasse für ViewController und TableView innerhalb hinzugefügt. – user3204765

0

Ich löste es, indem ich manuell den Modulnamen im Storyboard unter dem Klassennamen schrieb.In meinem Fall war es der gleiche Name wie die Klasse, aber es kann sich unterscheiden.

Verwandte Themen