2009-04-07 5 views
3

예를 들어왜 Xcode의 codeSense 기능은 가끔씩 만 작동합니까?

[UIView commitAni 

을 입력하면 다음과 같이 끝납니다 :

그래서

[UIView commitAnimations]; 

하지만 여기서는 그렇지 않습니다. . CoreGraphics.framework 을 포함 시켰지만 이상하게 보입니다 :

는 다음과 같이 완성됩니다 :

[UIView setAnimationDuration:<#(NSTimeInterval)#> 

그러나이 코드는 codeSense에 의해 인식되지 않습니다. :

[UIView setAnimationTr 

... 여기서

[UIView setAnimationTransition 

으로 완성 될 것으로 예상되지만 그렇지 않습니다. 여기에 무슨 문제가있을 수 있습니까? 모든 것이 잘 컴파일되고 iPhone 시뮬레이터에서 작동하기 때문에 포함 된 프레임 워크를 놓친다 고 생각하지 않습니다.

답변

1

일반적으로 codeSense가 올바르게 완료되지 않으면 모든 가능성을 표시하기 위해 ESC를 입력하고 원하는 것을 선택합니다.

codeSense 답변 : 없음 완료는, 대부분의 시간 객체 선언에 오타 또는 어딘가에 완료 요청 근처에 누락 된 ; 또는 ) 또는 ]이 발견했다.

+0

입력 할 때 항상 대괄호를 끝내는 것이 좋습니다. like [foo autocompl]; for [foo autocomplete]; ? – Thanks

+0

아니요, 완료 요청 전에 어딘가에서 말했을 것입니다. 구문 오류로 인해 codeSense가 혼동 될 수 있습니다. – mouviciel

2

(나는 간결함을 위해 키 바인딩을 변경하지 않았다고 가정합니다.) Cmd-. "나에게 다음 완료"또는 Cmd-, "나에게 완성 메뉴를 줘라"또는 "무엇인가 나타나고, 돌아올 때까지 기다리는 것"을 기다려라. 나는 종종 그 중 마지막 사람이 내가 원하는 완성을하지 못하는 것을 보았다. Cmd-는 올바른 선택을 보여줄 것이다.

+0

"무언가가 나타나서 반품 할 때까지 기다리는 중입니다"라는 측면이 있습니다. 나는 그 Cmd- 것을 결코 시도하지 않았지만, 힌트를 주셔서 감사합니다. 시도해 볼게! – Thanks

0

아마도 이미 시도한 것 같지만 응답이없는 코드가 생기면 최근에 가져온 파일을 모두 저장합니다. 파일을 저장하면 새로 참조 된 항목에 대한 코드 센스 범위가 저장되는 것 같습니다.

0

iphone 3.0 SDK로 xcode3.1.3으로 업그레이드되었습니다. UIScreen mainScreen과 같은 단순한 것들에 대해서는 자동 완성되지 않습니다. 해당 UIScreen main() 만 찾을 수 있습니다. 색인을 여러 번 재구성 해 보았습니다.

4

정적 코드 분석 도구 (Clang)와 CodeSense간에 충돌이있는 것 같습니다. http://www.openradar.appspot.com/7338181

"정적 분석 실행"빌드 설정을 해제하고 "코드 작성 색인 다시 작성"을 클릭하면 나에게 해당 문제가 해결되었습니다. 그러나 정적 코드 분석도 필요합니다.

+0

그래,이게 해결책이야. 바보 같은 벌레. –

+0

내가 해왔 던 일은 분석기를 "빌드 및 분석"을 사용하여 가끔 실행 한 다음 중단 될 때마다 "코드 작성 감지 인덱스 다시 작성"을 한 번씩 수행하는 것입니다. – ThomasW

관련 문제