Ответ 1
Попробуйте следующее:
Откройте "Организатор", затем вкладку "Проект".
Очистите "Производные данные". Xcode должен повторно проиндексировать ваш проект, тогда и смысл кода должен работать. По крайней мере, работал на меня.
Я запускаю "старый" проект Xcode 3 в Xcode 4, и смысл кода не работает для моих собственных классов. Я пробовал следующее:
Без везения.
Иногда смысл кода работает, но в основном я просто получаю "No Completions".
Попробуйте следующее:
Откройте "Организатор", затем вкладку "Проект".
Очистите "Производные данные". Xcode должен повторно проиндексировать ваш проект, тогда и смысл кода должен работать. По крайней мере, работал на меня.
Я знаю, что это поздно, но для справки: http://sealedabstract.com/code/when-xcode-4s-code-completion-autocomplete-breaks/
Закройте проект, оставив XCode все еще запущенным.
Откройте окно "Организатор XCodes", перейдите на вкладку "Проекты", выберите нужный проект и нажмите кнопку "Удалить" рядом с "Производные данные".
Закройте XCode.
Перейдите к файлу проекта .xcodeproject в Finder. Щелкните правой кнопкой мыши, выберите "Показать содержимое пакета".
Оставьте файл project.pbxproj, но удалите файл project.xcworkspace, любые файлы .pbxuser и всю папку userdata.
Откройте проект в XCode. Вы увидите, что XCode едет высоко на использование ЦП в течение 10-60 секунд, в зависимости от размера вашего проекта. В окне активности будет указано "Индексирование"
Когда ваш пик процессора вернется на землю, завершение кода снова будет работать.
Там много удалений, поэтому будьте осторожны, но это определенно сработало для меня.
Я делал это, и он работал несколько раз для меня (после того, как вы попытались все это выше).
Изменить: теперь я просто нажимаю пробел, backspace (версия для Mac) и перестраивает... работает хорошо. Затем не забудьте прокрутить (иногда цвета не отображаются до тех пор, пока вы не прокрутите).
Я делаю ставку только на шаг 2 (измените префикс), что он делает, но это, по сути, возвращает вас к запуску. Внезапно все магически перекрашивает себя и выполняет функции.
Удачи, если это не исправить, возможно, попробуйте сделать это с вашими файлами pch зависимости (три20 или FB api's)
Очистка "Производных данных" работает только для меня. Я должен это сделать, а затем перезапустить Xcode, как 3-4 раза в день, чтобы снова использовать код.
Я выяснил, что настоящая причина заключается в настройках Target. Я переместил все из Контуры поиска заголовков в Пути поиска заголовка пользователя, и он исправлен. В моем случае рамкой, с которой я работаю, является RestKit.
Кстати, я придумал это, потому что добавлял в проект еще один проект (QuickDialog), и мне было любопытно, что это использует Пути поиска заголовка пользователя, но не Контуры поиска заголовков. Вот разница между ними.
Вы можете исправить эту проблему с помощью настроек сборки сборки, таких как PreCompile Prefix Headers: NO
FYI, если один файл не имеет смысла кода, но остальная часть вашего проекта делает это, проверьте его добавление к цели. Как только я это сделал, я получил код в этом файле.
Это были возрасты, но ответ заключается лишь в том, чтобы переместить код в новую папку, и смысл кода теперь должен работать.
Это произошло, когда я добавил новый класс Objective-C, и смысл кода не работает только в недавно добавленных файлах .m и .h(при последнем обновлении XCode 4 во время этого сообщения).
Закройте все окна xcode
Удалите все ваши проекты из xcode > window > организатор и перезапустите проект. Теперь он будет правильно оценивать и индексировать ваш проект.
Я написал об этом подробно здесь.
В основном мое исправление заключалось в том, что с локализацией. Я обновился с xcode 3.2.5 до xcode 4, а затем вкрутился со встроенным конструктором интерфейса и случайно включил локализацию для XIB файла, который поместил мои исходные файлы в каталог en.lproj. Переместив их обратно в папку Classes, он отлично работал.
Опять же, чтобы помочь другим с этой проблемой, которая в моем случае произошла при обновлении до Xcode 4.3.
Конечно, я пробовал решения, предлагаемые в этом посте, и никто из них не работал. Но предложение о переносе местоположения проекта в Finder привело к некоторому кодовому смыслу, но предложения не имели никакого смысла. Я закончил удаление моего проекта и повторно клонировал его из репозитория git. Это отбросило кодовое чувство для меня...Я открываю второй проект в фоновом режиме всякий раз, когда мое считывание кода Xcode перестает работать (обычно он работает в первый раз, когда я открываю проект, но через некоторое время смысл кода больше не работает). Поэтому я должен открыть второй проект в Xcode. Xcode начнет индексировать второй проект, и волшебный смысл кода для моего основного проекта вернется.
Запуск Xcode 4.3.1 на Lion
Надеюсь, это поможет кому-то.
Из этот комментарий здесь Я смог отладить проблему на моем конце, это был флаг bad -w, который препроцессор clang не был должным образом признан. В принципе, запуск
defaults write com.apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3
в терминале увеличивает значение указателя и помогает вам отслеживать проблемы. Откройте Console.app и найдите сообщения из Xcode, строка поиска IDEIndexingClangInvocation
помогла мне найти их.
Для меня это произошло просто потому, что у файла не было целевого членства. Если первые несколько ответов не сработали для вас, перейдите в ваш .m файл (предположительно, этот файл, с которым вы столкнулись), откройте представление "Утилиты" ( "Редактировать" → "Утилиты" → "Показать инспектор файлов" ) и в разделе "Цель Членство" проверьте цель, к которой вы хотите принадлежать этому файлу.