Xcode 4で「古い」Xcode 3プロジェクトを実行していますが、自分のクラスではコードセンスが機能しません。私は次のことを試しました:
運がなければ。
コードセンスが機能することもありますが、ほとんどの場合、「完了なし」が表示されます。
これを試して:
オーガナイザーを開き、[プロジェクト]タブを開きます。
「派生データ」をクリアします。 Xcodeはプロジェクトのインデックスを再作成し、コードセンスが機能するはずです。少なくとも私のために働いた。
私はこれが遅いことを知っていますが、参考のために: http://sealedabstract.com/code/when-xcode-4s-code-completion-autocomplete-breaks/
XCodeを実行したまま、プロジェクトを閉じます。
XCodeのオーガナイザーウィンドウを開き、[プロジェクト]タブに移動して正しいプロジェクトを選択し、[派生データ]の横にある[削除]ボタンをクリックします。
XCodeを終了します。
Finderでプロジェクトの.xcodeprojectファイルに移動します。右クリックして、「パッケージの内容を表示」を選択します。
Project.pbxprojファイルを残しますが、project.xcworkspaceファイル、すべての.pbxuserファイル、およびuserdataフォルダー全体を削除します。
XCodeでプロジェクトを開きます。プロジェクトのサイズにもよりますが、XCodeがCPU使用率を10〜60秒間上回っています。アクティビティウィンドウに「インデックス作成中」と表示されます
CPUスパイクが地球に戻ると、コード補完が再び機能します。
そこには多くの削除が行われているので注意してください、しかしこれは間違いなく私のために働いた。
私はこれを行ってきましたが、以前に上記のすべてを試した後、私のために複数回働きました。
編集:今、私はちょうどスペース、バックスペース(Mac版)を打つと再構築...うまく動作します。次に、スクロールすることを忘れないでください(どこかにスクロールするまで色が表示されない場合があります)
ステップ2(プレフィックスの変更)だけがそれを行うことを賭けていますが、これらは基本的に実行に戻ります。突然、すべてが魔法のように色を変えて機能を完了します。
それがそれを修正しない場合は幸運、おそらくあなたの依存関係pchファイル(three20またはFB apiの)にこれをやってみてください
「派生データ」の消去は、一時的にしか機能しません。コードセンスを再び機能させるには、それを実行してから、毎日3〜4回Xcodeを再起動する必要があります。
本当の原因はTargetのBuild Settingsにあることがわかりました。すべてをHeader Search PathsからUser Header Search Pathsとそれに移動しました固定されています。私の場合、私が使用しているフレームワークはRestKitです。
ところで、私は別のプロジェクト( QuickDialog )を自分のプロジェクトに追加していて、それがUser Header Search Paths、ただし(ヘッダー検索パス) ここにそれらの違いがあります。
この問題を修正するには、ビルド設定を次のように変更しますPreCompile Prefix Headers:NO
参考までに、あるファイルにはコードセンスがないが、プロジェクトの他のファイルにはコードセンスがある場合は、そのファイルがターゲットに追加されていることを確認してください。それをやったら、そのファイルにコードセンスが戻ってきました。
古くからありますが、答えはコードを新しいフォルダーに移動するだけで、コードの意味は今は機能しているはずです。
これは、新しいObjective-Cクラスを追加したときに発生し、コードセンスは、新しく追加された.mファイルと.hファイル(この投稿中のXCode 4の最新のアップデート)でのみ機能しません。
すべてのXcodeウィンドウを閉じます
Xcode> window> organizerからすべてのプロジェクトを削除し、プロジェクトを再起動します。これで、プロジェクトが適切に検出され、インデックスが作成されます。
私はそれについて詳細に書いた ここ 。
基本的に、私の修正はローカライズに関するものでした。 xcode 3.2.5からxcode 4にアップグレードしてから、ビルトインインターフェイスビルダーをねじ込んで、誤ってXIBファイルのローカライズを有効にして、ソースファイルをen.lprojディレクトリに配置しました。それらをClassesフォルダに戻した後、完全に機能しました。
Xcodeのコードセンシングの動作が停止するたびに、バックグラウンドで2番目のプロジェクトを開きます(通常、プロジェクトを最初に開いたときに動作しますが、しばらくするとコードセンスが動作しなくなります)。だから私はXcodeで2番目のプロジェクトを開くことです。 Xcodeは2番目のプロジェクトのインデックス作成を開始し、魔法のように私のメインプロジェクトのコードセンスが戻ってきます。
LionでXcode 4.3.1を実行する
これが誰かを助けることを願っています。
私にとっては、ファイルにターゲットメンバーシップがなかったために起こりました。最初のいくつかの答えがうまくいかなかった場合は、.mファイル(おそらく問題があるのはこのファイル)に移動して、tilitiesビューを開きます(編集->ユーティリティ->表示[ファイルインスペクター]をクリックし、[ターゲットメンバーシップ]で、このファイルが属するターゲットを確認します。
このコメントはこちら から問題をデバッグできましたが、clangプリプロセッサが正しく認識していなかったのは悪い-wフラグのようです。基本的に、実行中
defaults write com.Apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3
ターミナルでは、インデクサーの冗長性が向上し、問題の追跡に役立ちます。 Console.appを開き、Xcodeからのメッセージを探します。検索文字列IDEIndexingClangInvocation
は、それらを見つけるのに役立ちました。