1279 Stimmen

Xcode - Wie behebt man den 'NSUnknownKeyException'-Fehler? Grund: ... Diese Klasse ist nicht schlüsselwertcodierfähig für den Schlüssel X"?

Ich versuche, ein UILabel mit einem IBOutlet zu verknüpfen, das in meiner Klasse erstellt wurde.

Meine Anwendung stürzt mit folgendem Fehler ab.

Was bedeutet das?

Wie kann ich das beheben?

*** App-Beendigung aufgrund von unbehandelter Ausnahme 'NSUnknownKeyException', Grund: '[ setValue:forUndefinedKey:]: Diese Klasse ist nicht schlüsselwertcodierfähig für den Schlüssel XXX.'

1voto

mfaani Punkte 28161

Zusammen mit anderen Themen, die Sie in anderen Antworten sehen können. Der Fehler, den ich mir selbst gemacht habe, bestand darin, dass ich ein Projekt von Grund auf gestartet habe und damit begonnen habe, die Anfangsszene meiner Storyboard zu löschen und dann eine Szene aus einem anderen Projekt in meine Storyboard einzufügen.

Es ist kein Problem, das zu tun. Sie müssen nur einen Einstiegspunkt Ihrer Storyboard hinzufügen, d.h. überprüfen Sie das is initial View Controller auf dem gewünschten View Controller. Andernfalls wird es eine graue Szene sein und Ihnen einen Fehler werfen.

geben Sie eine Bildbeschreibung hier ein

1voto

Gleiches Problem präsentiert. Meine Lösung bestand darin, den korrekten Storyboard-Wert im Dropdown-Menü "Main Storyboard" einzugeben. Ich hatte die Datei mainstoryboard.storyboard umbenannt, aber die Bereitstellungsinformationen nicht zurückgesetzt.

1voto

user1760527 Punkte 1104

Ich hatte dieses Problem mit Swift-Klassen nach dem Upgrade auf Xcode7. Gelöst habe ich es, indem ich die @objc-Direktive verwendet habe:

@objc(XXXViewController) class XXXViewController

1voto

jatin Punkte 181

Manchmal werden Swift-Dateien nicht hinzugefügt oder aus dem Ziel entfernt. Gehen Sie zu Ziel --> Build-Einstellungen --> Kompilieren von Quellen --> und prüfen Sie, ob eine erforderliche Swift-Klasse fehlt oder nicht. In meinem Fall ist die Anwendung abgestürzt, weil die Swift-Quelldatei nicht im Kompilieren vorhanden war.

1voto

Rafael Ruiz Muñoz Punkte 5105

Dies ist mir bereits zweimal passiert.

Die Lösung bestand darin, das gesamte Storyboard neu zu machen, da ich es von einem anderen kopiert hatte (weil es fast dasselbe war).

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