Как я могу исправить исключение NSInvalidUnarchiveOperationException
* Завершение приложения из-за неотображенного исключения 'NSInvalidUnarchiveOperationException', причина: '* - [NSKeyedUnarchiver decodeObjectForKey:]: не может декодировать объект класса (NSLayoutConstraint)'
У меня очень простое приложение
В одном представлении есть одна кнопка
I Control Нажмите и перетащите кнопку во второе представление и выберите MODAL
Когда я запускаю его в симуляторе, все работает
Когда я запускаю его в своем iPad под управлением iOS 5.1.1, он выходит из строя с ошибкой выше. Я понятия не имею, почему и нет кода.
Ответы
Ответ 1
Это происходит потому, что вы используете Xcode 4.5 (или ранее бета), который по умолчанию использует "автомат". Автоматический макет доступен только на iOS 6, поэтому вы получите ошибку времени выполнения в предыдущих версиях iOS.
Вы можете исправить это, открыв свою раскадровку, открыв панель "Утилиты" и отключив флажок "Использовать автозапуск" в первой вкладке/разделе:
![enter image description here]()
Для регулярных нипперов, отличных от раскадровки, выберите представление верхнего уровня для доступа к этой опции.
Ответ 2
В свой Xib- > Identity и type → Document Builder Document → снимите флажок UseAutoLayout, это новая функция с Ios6