Почему функция codeSense в Xcode работает только иногда? - PullRequest
3 голосов
/ 07 апреля 2009

Например, когда я печатаю

[UIView commitAni

тогда я ожидал бы, что он заканчивает это как:

[UIView commitAnimations

так что у меня есть:

[UIView commitAnimations];

но здесь это не так. Хотя я включил CoreGraphics.framework Странно: когда я пробую другие анимационные вещи, это работает:

[UIView setAnimationDura

будет завершено до:

[UIView setAnimationDuration:<#(NSTimeInterval)#>

Но этот код не будет распознан codeSense:

[UIView setAnimationTr

... здесь, я бы ожидал завершения до

[UIView setAnimationTransition

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

Ответы [ 5 ]

4 голосов
/ 10 ноября 2009

Похоже, это конфликт между инструментами статического анализа кода (Clang) и CodeSense. Увидеть http://www.openradar.appspot.com/7338181

Я отключил параметр сборки «Run Static Analyzer» и щелкнул «Пересчитать индекс смысла кода» в разделе «Общие», и это решило проблему для меня. Однако я тоже хочу статический анализ кода.

2 голосов
/ 07 апреля 2009

Это (я предполагаю, что вы не меняли привязки клавиш, для простоты) Cmd-. "дай мне следующее завершение" или Cmd-, "дай мне меню завершения", или "подожди, пока что-нибудь появится и нажмете на возврат"? Я часто видел, как последний из них не дал мне нужного завершения, где Cmd- покажет правильный вариант.

1 голос
/ 07 апреля 2009

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

Когда codeSense отвечает: Не найдено завершение , большую часть времени в объявлении объекта есть опечатка или пропущено ; или ) или ] где-то рядом с запросом на завершение.

0 голосов
/ 15 июля 2009

Только что обновлен до xcode3.1.3 с iphone 3.0 sdk. Codesense не будет автоматически заполняться для простых вещей, таких как UIScreen mainScreen. его можно найти только основной UIScreen (). Я пытался пересоздать индекс несколько раз, но безуспешно.

0 голосов
/ 08 апреля 2009

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

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