Xcode не сразу распознает новые классы (iOS)
Я работаю с Xcode около 5 месяцев, и недавно я столкнулся с проблемой, когда добавляю новый класс. Если я добавлю новый класс, скажем, например, "CustomCell", и я пытаюсь импортировать "#import CustomCell.h" в другой файл .m, он даст мне сообщение об ошибке "Файл CustomCell.h не найден", даже если он прав там в списке. У меня не было никаких проблем с этим в прошлом, и я знаю, что я делаю, когда речь заходит о импорте (по крайней мере, я не изменил способ, которым ранее занимался, когда работал).
У меня была эта проблема несколько раз недавно, и иногда, если я просто закрываю XCode и перезапускаю ее, она узнает класс. У кого еще возникла эта проблема? Есть ли быстрый способ просто обновить проект, чтобы узнать, может ли Xcode распознать новый класс?
Ответы
Ответ 1
Закройте все ваши проекты, откройте организатор (из меню окна), убедитесь, что выбран правильный проект, а затем напротив "производных данных" нажмите "Удалить".
После этого закройте xcode, откройте его, откройте проект, очистите его, и все должно работать нормально.
Ответ 2
Несколько целей: Убедитесь, что ваш файл принадлежит к необходимым целям!
Для нового файла убедитесь, что установлены соответствующие целевые объекты.
![xCode Screenshot]()
Для существующего файла проверьте инспектор файлов, чтобы проверить целевое членство.
![xCode Screenshot]()
Ответ 3
У меня была та же проблема, что и Xcode, не видя какого-либо нового класса, который я создал для приложения Watch OS2, над которым я работаю.
В конце концов я понял, что видел новые классы, которые я создал в каталоге "extension", но каждый класс, который я создал в каталоге "app" моего проекта, не показывался.
Что для меня работало, так это создание нового .swift файла в расширении, а затем перемещение как ссылки в проекте, так и фактического файла вручную в нужное место. После этого я смог создать экземпляр этих классов в контроллере просмотра.
Надеюсь, что это поможет любому другому игроку, работающему над созданием часов.
Ответ 4
Для тех, кто имеет дело с одной и той же проблемой, и вышеупомянутое решение не удалось решить, убедитесь, что у вас нет
циклический импорт
вопрос, как у меня. Это случилось со мной, поскольку у меня был сложный код, и я не осознал свою ошибку.