Swift と Objective-C との連携方法

Objective-C で定義したクラスを Swift で使用する

【ブリッジヘッダーファイルを追加する】

ブリッジヘッダーファイルは,$(TARGET_NAME)-Bridging-Header.h で,プロジェクトに追加する.

Swift で利用する Objective-C クラスをブリッジヘッダーファイルに記載する.

【Build Settings ー Objective-C Bridging Header を設定する】
ブリッジヘッダーファイルが Swift に取り込まれるように、ターゲット – Build Settings 設定に登録する.

Swift Compiler - Code Generation
Objective-C Bridging Header
$(TARGET_NAME)/$(TARGET_NAME)-Bridging-Header.h と指定する.

【Swift で Objective-C クラスの呼び出し方】
Objective-Cのインスタンスメソッドの場合、 “textWithString:” のようなメソッドは “textWithString(str)” と呼び出す.
“textWithString: string:” というメソッドの場合, “textWithString(str1, string:str2)” と呼び出す.

Swift にインポートした Objective-C クラスは、そのまま継承して新しい Swift クラスを定義できる.

Swift で定義したクラスを Objective-C で使用する

【Swift クラスが定義されたヘッダーファイルをインポートする】
Swift で定義したクラスを利用するには、それを使用したい実装ファイル内に、次のように #import 文を記載する.

#import "$(PROJECT_NAME)-Swift.h

このファイルは、プロジェクト自体には登録されていないが、Derived Data の中間ファイルとして “DerivedSources” フォルダーに自動的に生成されている.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です