XCode Неизвестный класс ***** в файле Interface Builder

В приложении неожиданно это дает мне ошибку XCode Unknown class ***** в файле Interface Builder. Я просмотрел все, раскадровку, классы и т.д.

Я пытаюсь переименовать класс, но это та же проблема, даже я создал новый класс и скопировал код. Я думаю, что XCode воспринимается из кеша, потому что даже свойства, которые я удалил, как значок в элемент панели вкладок все еще присутствует в приложении, когда я запускаю его.

В чем может быть проблема?

Ответ 1

Извините, после нескольких попыток я нашел одно решение, удалив папку симулятора в /... Library/Application\Support/iPhone\Simulator/и удалив класс и повторно добавив его.

Ответ 2

Также, если вы используете статическую библиотеку, не забудьте добавить флаг -ObjC в другие флаги компоновщика на вкладке "Настройки проекта".

Если вы этого не сделали, "Неизвестный класс... в файле Interface Builder" возникнет при попытке загрузить контроллер представления из статической библиотеки в IB.

Еще один случай, который я испытал, будет показывать ошибка.

Ответ 3

У меня возникла проблема, когда я создал проект с тем же именем, который уже существует в каталоге моих проектов (хотя он был удален некоторое время назад). Xcode не понимал, что это новый проект и использует каталог сборки старого проекта как каталог сборки для нового. Я не знал, как полностью перестроить проект с нуля, и я просто удалил каталог сборки. В моем случае я удалил /Users/username/Library/Developer/Xcode/DerivedData/ProjectName -suffix. Вы можете найти его в Xcode в навигаторе проекта слева, выбрав ProjectName- > Products- > ProjectName.app и инспектор файлов справа покажет вам полный путь к файлу.

Ответ 4

Вам нужно будет добавить к вашим целям другие флаги компоновщика, просто добавление к настройкам сборки проекта, похоже, не работает.