2015-12-10 10 views
20

*** app aufgrund nicht abgefangene Ausnahme Abschluss 'NSInvalidUnarchiveOperationException', Grund:Warum Xcode 7.2 abstürzt 'Konnte die Klasse' IBNSLayoutConstraint 'nicht instanziiert werden?

'nicht Klasse IBNSLayoutConstraint namens instanziiert Könnte' Ich aktualisiere nur Xcode 7.2 dann beginnen zu i ist in Ordnung, alles zu überprüfen. aber ich habe diesen Fehler und es stürzt ab. Ich grabe dieses Problem, jeder sagte, dass "Stellen Sie sicher, dass keine Einschränkungen für Ansichten installiert sind, die nicht installiert sind." aber ich habe keine deinstallierten Constrains. und ich habe keine NSLayoutConstraint-Verkaufsstellen. Vielen Dank.

+0

Mögliche Duplikat [IBNSLayoutConstraint konnte nicht instanziiert genannt Klasse] (http://stackoverflow.com/questions/24095318/could-not-instantiate- class-named-ibnslayoutconstraint) –

Antwort

4

Sie wahrscheinlich verwenden InterfaceBuilder Storyboard für die Lokalisierung. Sie sollten sie auch berücksichtigen und inaktive Einschränkungen in ihnen entfernen oder Localizable Strings für die Lokalisierung verwenden. Sie können auch this antworten.

Storyyboard localization section

+0

Ja. Leider habe ich das vermisst. Ich habe zwei Storyboards. und ich ändere nur ein paar Einschränkungen. Danke für deine Antwort. Es hilft mir, dieses Problem zu lösen. – ali

0

Ich hatte ein ähnliches Problem in, wo ich eine "Konnte nicht Instanz IBNSLayoutContraint-Klasse instanziieren" Fehler, wenn eine meiner Apps meine XIBs geladen. Es endete damit, dass eines meiner Hindernisse ein Häkchen auf seine Eigenschaften hatte. Es war etwas wie "Remove from Build". Ich habe es deaktiviert und meinen Fehler behoben. Ich denke nicht, dass dies die Lösung für Ihr Problem ist.

+0

Danke für Ihre Antwort John. Aber ich habe alle Platzhalter von Widersprüchen überprüft. Alle sind nicht ausgewählt. – ali

23

Select Storyboard deaktivieren Größenklasse mein Problem lösen. Hoffe das wird dir helfen! Danke Nachdem Sie Ihr Projekt erstellt haben, können Sie die Größenklasse erneut aktivieren.

enter image description here

+0

das löste das Problem für mich! – abinop

+0

Dies behebt das Problem ... Danke für die Freigabe! – Andres

+3

Haben Sie auch Größenklassen wieder aktiviert? Bei den meisten Apps sollten SIe GRÖSSE-Klassen unbedingt verwenden, daher ist es wahrscheinlich entweder die falsche Antwort oder ein Hinweis auf einen Fehler, der gespeichert werden sollte. –

2

Ich hatte eine deaktiviert Ansicht (nicht installiert) in meiner Hauptansicht in IB. Ich löschte es und löschte auch alle Einschränkungen ohne Bezugnahme auf IB. Und hat für mich gearbeitet.

View deactivated

Attributes inspector

+0

Ihre Antwort und @Evgeny Mikhaylovs Antwort scheinen auf das gleiche Problem zu zeigen. Beide Lösungen sind gleichwertig. – verybadalloc

+0

das funktionierte für mich ..... danke –

9

In meinem Fall hatte ich „PadView“, die nicht in jeder/jede Größenklasse installiert wurde und in regelmäßigen/regelmäßige Größenklasse installiert, aber es ist Subviews wurden in jeder Größe installiert Klassen.

enter image description here

"PadView" Einstellungen:

enter image description here

"PadView" Subviews Einstellungen:

enter image description here

Als ich "PadView" Subviews Installationseinstellungen auf die gleiche geändert Als "PadView" -Einstellungen wurde mein Problem gelöst.

enter image description here

+0

Ihre Antwort und die Antwort von @Kayron Cabral scheinen auf das gleiche Problem zu zeigen. Beide Lösungen sind gleichwertig. – verybadalloc

1

Ich habe eine Anwendung, die benutzerdefinierte Größenklassen für iPad setzt so App Ausrichtungen Hochformat und Quer erkennt als Regular/Compact und Compact/Reguläre Züge.

Also, als ich eine Ansicht installiert nur als sowohl R/C Installiert und C/R installiert hatte, stürzte ich: "Konnte die Klasse namens IBNSLayoutConstraint nicht instanziieren, wenn ich auf 7.2 endgültige aktualisiert.

Fix ist sehr einfach: Ansicht installiert für Alle hinzufügen/Any: "Installiert"

von Storyboard-Quelle zu vergleichen es scheint, dass diese Zeile nach der Fixierung entfernt wurde:

// Y4D-LA- PwQ ist Sicht spezifische ID

+0

Ja. Du hast recht. Normalerweise verwende ich diese Methode, wenn Storyboard-Elemente nicht installiert sind. Es ist der einfachste Weg, alle Elemente im Storyboard zu installieren. Danke – ali

+0

Gern geschehen. Außerdem kannst du abstimmen, wenn dir das geholfen hat. – vedrano

1

Es ist einfach zu lösen, ohne die Hackerei in der obigen Antwort erwähnt. Wechseln Sie Ihr IB zu irgendeinem/irgendwelchen und schauen Sie sich die Unteransichten jeder topview an. Wenn Sie feststellen, dass eine Superansicht nicht installiert ist und keine Teilansicht davon installiert ist, deaktivieren Sie diese installierte Teilansicht in einem beliebigen Verzeichnis, damit die Superansicht und die Teilansichten den gleichen Installationsstatus haben.

1

Try "Verwenden Größenklassen" Überprüfung:

enter image description here