2009-10-26 2 views
67

EDIT: Это странно ... если я дважды щелкнул элемент «Последние проекты» для проекта на экране приветствия, смысл кода и раскраска будут работать отлично, но если я просто щелкнуть Open (внизу правый экран приветствия) нет. Открытие с File > Recent projects тоже не работает, и ни один из них не делает двойной щелчок по файлу .xcodeproj в Finder.xcode code sense color/complete not working


смысл Код для iPhone OS 3.0 проекта я работал в течение нескольких месяцев (с помощью различных установок/версии XCode) не работает больше. Например, если я делаю NSString *myString, весь код будет черным (без раскраски, без Option + Double Click, без завершения кода). Code Sense только «работает» для моих собственных классов/методов/свойств, но не для любого из классов SDK. Если я создаю новый проект с нуля, у меня все эти работы.

Я уже пробовал изменить «базовый SDK для всех конфигураций» в этом проекте. Я уже пробовал «Восстановить индекс смысла кода». Я уже пробовал «Очистить все цели».

Документация в настройках загружена и работает. Например, если я выберем NSString выше и сделаю «Правка-щелчок» -> Найти текст в документации, я получу окно со всей ссылкой на класс.

Любые идеи будут высоко оценены.

+0

У меня была аналогичная проблема только для одного проекта. Кодирование цвета/завершения кода просто отлично подходит для других проектов. Вы решили? –

+0

вид ... новый обновление sdk не проблема. я заметил, что для завершения анализа цвета требуется несколько секунд. – mga

+1

Я теряю автозаполнение и раскраску текста при каждом изменении файла, добавленного в файл проекта prefix.pch. Ответы, приведенные ниже, вернули мне автозаполнение и раскраску текста, но ошибка все же вернулась, когда я меняю файлы, импортированные в prefix.pch.Кто-нибудь нашел, как исправить эту проблему? – booker

ответ

10

Получить информацию о проекте в Xcode и изменить формат проекта в соответствии с версией используемого Xcode (начиная с этой записи, «Xcode 3.2-compatible»).

Вы также можете удалить производные данные, но если вы не обновили свой формат проекта, ошибка будет повторно появляться почти сразу. (Это может произойти даже после обновления формата проекта, но я использовал, чтобы удалить DerivedData несколько раз в день, и я думаю, что я только сделал это один раз после фиксации проекта.)

Как уже отмечалось, переход на LLVM может помочь. Но, обновляя этот ответ (2012), вы все равно должны использовать LLVM.

+0

Несколько раз перезагрузив Xcode и переключив это предпочтение назад и вперед, я несколько раз исправил это для меня. Я установил свой компилятор в LLVM 2.1. –

2

В дополнение к тому, что tewha сделал, мне пришлось нажать кнопку «Восстановить индекс кода». Он находится внизу вкладки «Общие» в разделе «Получить информацию о проекте».

+0

, вероятно, потому, что ваша репутация еще недостаточно высока - я не помню, какой порог –

+0

, который может быть .. спасибо. – kolinko

12

У меня была та же проблема в Xcode 4 и была решена путем изменения компилятора из GCC 4.2 в LLVM GCC 4.2.

+0

Это определенно решило мою проблему. Спасибо Томасу! –

+0

Это исправлено для нас. Благодаря! – Taum

+0

Это исправлено для меня! Благодарю вас. – Kyle

1

Синтаксическая раскраска, автозаполнение, прыжки в файлы заголовков и т. Д. Полностью перегружены для меня с XCode4. Внешний вид моего навигатора символов полностью пуст. Не понял, насколько зависим я стал на автозавершение, моя производительность снизилась на множитель. Странно, что мои товарищи по команде видят различные комбинации недостающих функциональных возможностей - только мне посчастливилось потерять все. FWIW Я нахожусь на последнем Gen MBP.

3

Были те же проблемы в Xcode 4.0.2. Смысл кода заключался в каждом, кроме двух файлах, одном файле .m и соответствующем файле .h. Пробовал все - кроме восстановления индекса кода, потому что я нигде не мог найти кнопку - ничего не работало. В конце я удалил коррелированные файлы, .m, .h и .xib. Созданы новые файлы, теперь все работает так, как ожидалось.

204

В Xcode 4 я также не смог найти кнопку «Восстановить код», но если вы перейдете в Window -> Organizer, выберите вкладку «Проект» и нажмите «Удалить ...» рядом с папка «Производные данные», похоже, имеет тот же эффект.(Я получил этот совет от http://blog.slidetorock.com/xcode-4-code-sense-autocompletion-problems, что указывает на то, что он получил его в свою очередь от https://stackoverflow.com/questions/2138047/xcode-code-loses-syntax-coloring - но я не вижу его ни в одном из ответов там. Очень любопытно.)

+4

Я попытался перезапустить xcode и попытался сбросить компилятор в/из CGG/LLVM, но niether из них работал. Это сделало трюк для меня, спасибо! –

+2

Работа для меня в XCode 4. – Rodrigo

+1

Работа для меня в XCode 4 также – barfoon

0

Что сработало для меня, это сменить компилятор на «Компилятор LLVM 2.0».

0

Звонок кода работал для большинства файлов, за исключением 3 или 4 .m/.h файлов. Я пробовал все выше, и единственное, что сработало для меня, - это решение drct. Я закрыл xCode, переместил проект в другую папку и снова открыл.

Теперь я нахожусь, если я щелкнул правой кнопкой мыши по папке (или группе) в Навигаторе проектов и выберите «Новый файл». Код Смысл не работает.

Если вместо этого я использую главное меню и выберите «Файл >> Новый >> Новый код», то код отлично работает.

4

Существует, по-видимому, множество предлагаемых причин и решений этой проблемы, и я думаю, что я пробовал большинство из них. Что, наконец, работал для меня (в Xcode 4.1) было:

  • удалить ссылки на проблемные файлы в проекте навигатора
  • переместить проблемные файлы из папки проекта в Finder
  • назад в проекте навигатор, щелкните правой кнопкой мыши и выберите «Добавить файлы» ...
  • найти файлы, которые я только что переместил, и добавить их обратно в проект, убедившись, что был выбран «Скопировать элементы в папку целевой группы (если необходимо)».

Код Чувство восстановлено.

Чтобы быть более конкретным, моя конкретная проблема заключается в том, когда я создаю новый класс, щелкнув правой кнопкой мыши в навигаторе проекта, примерно 30-40% от временного кода не будет работать в файле заголовка нового класса. Интересно, что он действительно работает в реализации.

Вещь, которые я пробовал, которые не удались:

  • УДАЛЕНИЯ полученных папок данных в
  • удаления записей полученных папках данных органайзера в Finder
  • создавая совершенно новый класс с нуля (почему это Ждет» т работы я понятия не имею.)
  • изменения синтаксиса языка раскраски
  • меняющийся компилятор и из всех вариантов несколько раз
  • с указанием конкретного пути поиска заголовков

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

+0

Это работало для меня в XCode 9.3beta для файлов .hpp, которые находились в подпапках ссылки на папку. На них ссылались только файлы clang module.modulemap, определяющие использование .hpp для каждого модуля. 9.1 и 9.3beta были сломаны, все вышеизложенные неудачные попытки тоже не удались для меня. Просто удалите ссылку на папку и добавьте ее обратно. Возврат ошибки. – Asher

34

Синтаксис окраски работает обратно после того, как я сделать следующие шаги:

  • Перейти к Органайзер> Проект> Удалить производный данные из текущего проекта
  • Clean & Построить
  • Закрыть & Выход XCode, и возобновить проект
  • Синтаксическая окраска станет хорошо после переопределения проекта

P.S.

  • LLVM компилятор 3,0
  • я использовал -fno-ObjC-дуговой компилятор Флаги для всех библиотек третьих сторон (например ASIHTTPRequest)
  • Моего проект создан из XCode 4.2
+0

Это сработало для меня, Xcode 4.2. –

+1

Это сработало для меня, Xcode 4.3.2. –

+0

Также работал здесь, XCode 4.3.1! Спасибо – DZenBot

0

Одно Я столкнулся сегодня и повлиял на окраску кода, что я случайно добавил файл заголовка (.h) в Target -> Build Phases -> Compile Sources. После удаления, код цвета магически вернулся :)

0

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

File>Open Recent> Clear Menu 

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

1

У меня была эта проблема только на одном из моих файлов .m, и после того, как вы пробовали много вещей выше, оказалось, что XCode в какой-то момент удалил расширение .m. Он по-прежнему был включен в навигатор проекта в качестве «Myclass.m», но щелкнул правой кнопкой мыши и выбрав «Показать в поиске» показал, что файл просто называется «Myclass» (и был странно помещен в подпапку en.lproj!).

Извлечение ссылки из навигатора проекта, переименование и перемещение файла и повторное добавление его в проект исправили мою проблему.

35

Просто запустите в терминале каждый раз, когда это необходимо

rm -fR ~/Library/Developer/Xcode/DerivedData 

работает отлично. Подчеркивание и кодовое слово обратно ко мне! Когда-то понадобился Make Clean, чтобы поддержать работу.

примечание: как я вижу, он удаляет snapshost и другие функции Xcode4. Но мы его не используем :)

+5

Это лучше, чем другие ответы здесь. И он работает без перезапуска XCode. – Shiki

+2

Простое и отличное решение! Благодаря! – Winston

+1

Это работало для меня на Xcode 4.3.3 – Besi

10

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

Попробуйте импортировать собственный файл в верхней части импортированного списка выше UIKit.h и Fonudation.h и НЕ в конце, как это делают все.

В моем префиксе.PCH файл:

#ifdef __OBJC__ 
    #import "myFile.h" 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
#endif 
+1

Исправлено для меня .. люблю тебя. Какая головная боль – Morgz

+1

Работал отлично :) спасибо ... EDIT: просто шучу, меняя порядок, я не хотел компилировать проект. 2nd EDIT: нужно быть осторожным, если myFile.h использует ... теперь работает! – VTS12

2

Если вы заметили, что это происходит только на некоторых из ваших файлов, убедитесь, что файл .m является членом вашей цели.

+0

Отличный материал. Это именно то, что мне нужно. –

+0

Спасибо! У меня была подсветка синтаксиса по нескольким причинам, но на этот раз это было так. – Form

4

У меня была эта проблема. Раньше я отключил индексирование, чтобы ускорить операции xcode и не понимал, когда он остановит часть выделения кода. Если вы сделали это, вы можете включить индексацию снова, введя это в терминале:

defaults write com.apple.dt.XCode IDEIndexDisable 0 

, если вы хотите, чтобы включить индексацию выключить Введите в терминале:

defaults write com.apple.dt.XCode IDEIndexDisable 1 
1

Искать «GCC_INCREASE_PRECOMPILED_HEADER_SHARING» в настройках сборки и измените его на YES. - Это сработало для меня!

enter image description here

0

Иногда addding многострочные комментарии в конце заявления @end в коде предотвращает автоматическое завершение в Xcode 6.0.1. Я была такая же проблема. Просто проверьте его ..

0

Почему я снова счастлив я :)

Я имел эту проблему, но, прежде чем я Somedays инвалидов процесса индексации XCode.

Решено, поставив эту команду в терминал. Надеюсь, это поможет кому-то.

defaults write com.apple.dt.XCode IDEIndexDisable 0 

И да, я использую Xcode 7.0

+0

Ответ Felonious CodeMonk также полезен. –

0

В моем случае, только один .m файл имеет эту проблему. Автозаполнение всплывает хорошо, но оно не отображает все. Например, когда я набираю «NS», тогда автозаполнение всплывает только с «NSMutableDictionary», и ничего больше нет! Я все пробовал, искал везде в течение 1 часа +, но ничего не исправлял.

Тогда из любопытства я удалил блок комментариев, который я вставил раньше в конце файла .m (ниже слова @end). После удаления, автозаполнение работает снова, как обычно!

Вот виновник: enter image description here

Таким образом, если автозаполнение не удается только один файл, возможно, захотите проверить, что и удалите все ниже @end слова.

-1

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