0

私はSwiftプロジェクトを持っており、ObjectiveClass.hなどのObjective CクラスファイルをこのSwiftプロジェクトに追加し、ブリッジヘッダーを使用してプロジェクトで使用できるようにしました。ObjectiveClass.h クラスで、Swift プロジェクトの Swift クラスをインポートします。これどうやってするの?

私はたくさん検索しましたが、これに対する答えはまだ見つかりません。回答されたほとんどの質問は、Objective-C クラスを Swift プロジェクトにインポートする方法、または Swift クラスを Objective-C プロジェクトにインポートする方法に関するものです。でも私の場合は違う

4

2 に答える 2

0

とてもシンプル。@objc publicSwift クラスの前に宣言するだけです。このような

@objc public class YourSwiftClass : NSObject {

}

今、目的の c クラスで を使用します#import "YourProjectName-Swift.h"。上記のファイルが見つからないというエラーが表示されます。心配しないで、プロジェクトを 1 回だけ実行してください。実行時にファイルをクリックすると、 "YourProjectName-Swift.h" の内容が表示されます。これで、swift クラスの任意のメソッドにアクセスできます。

于 2016-11-14T13:36:53.890 に答える
0

appledocから直接。

Swift コードを Objective-C にインポートするときは、Xcode で生成されたヘッダー ファイルに依存して、これらのファイルを Objective-C に公開します。この自動生成されたファイルは、ターゲットで Swift インターフェイスを宣言する Objective-C ヘッダーです。これは、Swift コードの包括的なヘッダーと考えることができます。このヘッダーの名前は、製品モジュール名の後に「-Swift.h」を追加したものです。

ほとんどの人が理解していないことは、xyz-Swift.hヘッダー ファイルが xcode によって生成されるということです。それを信じる必要があるだけです。最初に、プロジェクトのソース フォルダー全体を検索していましたが、このファイルはどこにあるのか、見つかりませんでした。それをインポートするだけで出来上がりです。not found のようなエラー メッセージが表示されることがありますがxyz-Swift.h、プロジェクトをクリーンアップすると、スムーズに動作します。

于 2016-11-14T13:32:20.790 に答える