2011-07-13 13 views
17

XCode4では、最初の部分が共通する複数パラメータのメソッド名を簡単に絞り込むことができません。例えば、UITableViewDelegateから次の方法を検討してください。XCode4でのマルチパラメータメソッド名のコード補完

- tableView:viewForHeaderInSection: 
- tableView:heightForHeaderInSection: 
- tableView:accessoryTypeForRowWithIndexPath: 
... 

リストが進みます。 tableViewを開始するかなりの方法があります。私が "tableView"と入力すると、リストは長くなり、素早くナビゲートされません。 "tableView:"と入力すると、コロン(:)を入力するとすぐにコード補完が終了します。私が "tableViewview"のようなランオンを入力すると、補完も終了します。これはおそらく、最初のメソッド名の部分と文字通り一致しないためです。

長いリストをナビゲートするために、ランダムな数字の矢印キーヒットをマウスのまわりに掛けたり、鳴らしたりすることなく、そのようなリストのキーボードを介して完了する方法はありますか?私は、多パラメータのObjective-Cメソッドのコード補完が非常に限られていると信じていますが、これまでのところ実験やドキュメンテーションのいずれも照らされていません。

説明の更新:上記の説明では、メソッド呼び出しではなくメソッド宣言(.mファイルなど)の完了を参照しています。メソッド呼び出しの場合、XCode 4.xは各メソッドパラメータパートの完了を独立して行います。これは素晴らしい作品です。上記の問題は、一般に宣言にのみ適用されます.mファイルに新しいメソッド実装を書き始めるときです。

+0

私は同じ問題に直面しています! – Vasu

答えて

6

Xcodeで期待される動作が(残念ながら)実装されていないようです。しかし、私は部分的な解決策を見つけた:あなたは(末尾にスペースで)

- tableView:(UITableView *)tableView 

、プレスESCAPEキーを次のように入力すなわちあれば、マルチパラメータ法の完全な最初の部分を指定すると、コード補完が機能しますコード補完ダイアログが表示され、残りのメソッド名を入力し続けることができます。

あなたはおそらく疑問に思っている:

は、「ああ、私は本当にただ 私のコード補完を取得するには、この長いプリアンブルを入力する必要がありますか?」

レスキューへのコードスニペット!プリアンブルは一度だけ入力してください。convert it into snippetコード部分の末尾にスペースを追加することを忘れないでください。これで作業が楽になります。

Ima

どのようにあなたがちょうど作成したものを使用する必要がありますか? .mファイルでtablと入力すると、Xcodeによってスニペットが自動完成されます。プリアンブルが配置されたら、ESCを押して自動補完リストを表示します。

このソリューションは、使用するマルチパートメソッドごとにスニペットを作成する必要がありますが、時間を節約するだけでなく、それを共有するマルチパートメソッド名が多数ありません。同じプレフィックス。

2

お、申し訳ありませんが、私はあなたのアップデートにしたいようにプロトコルスタブで言及したように動作しません。 私はアクセサリーを使用します。実装するデリゲート/プロトコルメソッドの宣言を完全に実装するには、macアプリケーションストアのアプリを使用します。それが少し助けてくれることを願っています。

ポスト旧:

私はこのためにタブを使用しています。 例:多くの場合: コード補完には多くのinitメソッドが必要です。

次に、適切な方法にスクロールしたり、多くのキーストロークを使用したりする必要はありません。

iは、タブ⇥>initが完了したヒット>ヒット。

ヒットは、これらすべてのinitWithメソッドに対して、その後ワットし、再度タブを脱出します。

だけつのパラメータを持つメソッドよりも多くがあるときあなたも、最初のパラメータの後にをエスケープ/⇥タブを使用することができます。あなたのケースでは

トン>タブを打つ>>とリターン↩を脱出、そこにあなたの第三の方法を得ました。 Shift + Tab を使用して、前のコード補完引数にジャンプすることもできます。

4

私はかなり長い間、この問題に悩まされています。今、私も、最新のXcode 5で行う方法がないことを確認することができ、私は、バグレポートを提出した:
Multi-parameter method declaration completion in Xcode

あなたもそれをしたい場合は、それをDUPしてください。

関連する問題