Xcode не сразу распознает новые классы (iOS) - PullRequest
14 голосов
/ 28 ноября 2011

Я работаю с XCode около 5 месяцев и совсем недавно столкнулся с проблемой при добавлении нового класса.Если я добавлю новый класс, скажем, например, «CustomCell», и я попытаюсь импортировать «#import CustomCell.h» в другой файл .m, он выдаст мне сообщение об ошибке «Файл CustomCell.h не найден», даже если это правильнотам в списке.У меня не было проблем с этим в прошлом, и я знаю, что я делаю, когда дело доходит до импорта (по крайней мере, я не изменил способ, которым я раньше делал это, когда это работало).

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

Ответы [ 4 ]

20 голосов
/ 28 ноября 2011

Закройте все ваши проекты, откройте органайзер (из меню окна), убедитесь, что выбран правильный проект, затем напротив «производных данных» нажмите «Удалить».

После этого закройте xcode, снова откройтеоткройте свой проект, очистите его, и все должно работать нормально.

7 голосов
/ 30 марта 2017

Несколько целей: Убедитесь, что ваш файл относится к необходимым целям!


Для нового файла убедитесь, что соответствующие цели отмечены.

xCode Screenshot


Для существующего файла проверьте инспектор файлов, чтобы проверить целевое членство.

xCode Screenshot

0 голосов
/ 07 августа 2015

У меня была та же проблема с Xcode, когда я не видел ни одного нового класса, созданного для приложения Watch OS2, над которым я работаю.

В конце концов я понял, что он увидел новые классы, которые я создал в каталоге «extension», но что каждый класс, который я создал в каталоге «app» моего проекта, не будет отображаться.

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

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

0 голосов
/ 18 сентября 2014

Для тех, кто имеет дело с той же проблемой и вышеуказанное решение не смогло ее решить, убедитесь, что у вас нет

круговой импорт

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

...