Ответ 1
В раскадровке под полем "Пользовательский класс" модуль имеет значение "Нет". Измените это на свой модуль приложения или просто удалите и снова введите класс, он должен установить значение по умолчанию следующим образом:
Я создал новый Cocoa Touch File. Назван он SwipingViewController.
Затем попробуйте добавить пользовательский класс в ViewController.
И когда я запускаю приложение, я получаю сообщение об ошибке
2015-10-09 10: 53: 25.054 ParseStarterProject [5369: 389307] Неизвестный класс SwipingViewController в файле Interface Builder.
Я попытался найти в Google сам. Я нашел некоторые решения Xcode 6 Strange Bug: Неизвестный класс в файле Interface Builder
Но все они не помогли решить проблему.
Есть идея, как это исправить?
вот мои файлы проектов
В раскадровке под полем "Пользовательский класс" модуль имеет значение "Нет". Измените это на свой модуль приложения или просто удалите и снова введите класс, он должен установить значение по умолчанию следующим образом:
Для меня проблема заключалась в том, что класс не был частью Target Membership
.
Просто добавьте класс к цели, и вы должны увидеть его обратно в построителе интерфейса.
Все еще видя эту проблему с XCode 8.2.1, но я могу исправить эту проблему, изменив их в файле xboard раскадровки:
Удалить customModuleProvider="target"
в теге viewController:
- <viewController ... customModule="Flights" customModuleProvider="target" sceneMemberID="viewController">
+ <viewController ... customModule="Flights" sceneMemberID="viewController">
Удалите customModule="Flights" customModuleProvider="target"
в теге виджета (в моем случае тег label):
- <label ... translatesAutoresizingMaskIntoConstraints="NO" id="PzF-6K-Hpi" customClass="YZLabel" customModule="Flights" customModuleProvider="target">
+ <label ... translatesAutoresizingMaskIntoConstraints="NO" id="PzF-6K-Hpi" customClass="YZLabel">
Я нахожу, что шаг 1 также очень важен для разрешения сбоя/предупреждения и не может быть пропущен.
Я разрешил подобную проблему, добавив '-ObjC' в 'Другие флаги компоновщика' в 'Build Settings' моего проекта.
У меня была аналогичная проблема. У меня был ViewController с TableView, и пользовательский класс tableView назывался "ViewController". Я просто удалил пользовательский класс для tableView, и ошибка исчезла.
Я решил эту проблему, применив инициализацию контроллера. Основная декларация представления View-controller действительно загружала метод и реализацию класса в классе *.swift в раскадровке.
Я решил это, вручную указав имя модуля в раскадровке под именем класса. В моем случае это было то же имя, что и класс, но он может отличаться.