web-dev-qa-db-ja.com

Xcodeを自動的にプロトコルに準拠させる方法

プロトタイプテーブルビューを使用する場合、常にプロトコルTableViewDataSourceに準拠する必要があります。実装する必要があるメソッドを常に忘れているので、毎回プロトコルのソースを確認する必要があります。これは本当に時間がかかります。

Xcodeには、必要なメソッドを自動的に実装する機能が必要だと思いますよね? IntelliJ IDEA、Eclipse、Visual Studioと同じように。

この機能がどこにあるのか知りたい。ない場合、これに対する回避策はありますか?少なくとも、プロトコルに準拠するたびにプロトコルのソースコードを開く必要はありません。

意味がわからない場合は、次のコードをご覧ください。

プロトコルがあります

protocol Hello {
    func doStuff ()
}

それに合わせると

class MyClass: Hello {

}

実装する必要があるメソッドの名前を思い出せないことがよくあります。 Xcodeに上記のコードをこれに変換する機能がある場合:

class MyClass: Hello {
    func doStuff () {
        code
    }
}

今、あなたは私が何を意味するのか理解していますか?私はそのような機能がどこにあるのか尋ねたいだけです。

20
Sweeper

まあ私があなたの問題を理解しているなら、ここに回避策があります:

ここでhelloのようにプレフィックスとしてプロトコルを使用してメソッドを定義しようとすると、プロトコル名を入力し始めるだけでメソッドを覚えておく必要はありません。

enter image description here

オートコンプリートプロトコルが必要な場合は、 Snippets を試してください。

9
Hamza Ansari

Xcode 9:キーバインディングセットに新しいショートカットを追加することで、不足しているプロトコル要件を追加できます

  1. 上部のXcodeメニュー(左上)から[設定]を選択します。
  2. キーバインドを選択します。
  3. プロトコルについて検索します。 Refactor -> Add Missing Protocol Requirementsというコマンドが見つかります
  4. キー列を押して、ショートカットを追加します。 ex: cmd + shift + M

クラス名の名前(または彼の拡張子)をクリックして不足しているプロトコル要件を追加し、ショートカットを押すことができます

enter image description here

8
Amjad Tubasi

Xcode 9は、Swift Datasource&Delegatesの必須メソッドの実装を処理します。

UICollectionViewDataSourceの例とともに、これらのスナップショットを見てください。

プロトコルメソッドを実装するための警告を示します。

enter image description here

「修正」ボタンをクリックすると、すべての必須メソッドが追加されます。

enter image description here

6
Krunal

Amjadの投稿と非常によく似ており、Xcode 9/10はコードエディター内から欠落しているプロトコル要件を追加する機能を提供します。

クラス名を「右クリック」してください:「リファクタリング」->「欠落しているプロトコル要件を追加」 enter image description here

1
Maschina