web-dev-qa-db-ja.com

モジュールが無効な場合の@importの使用

私は問題があります

@import Foundation;

そして私は見る:
@ import vs #import-iOS 7

「モジュールを有効にする」を「はい」に設定します

そして私の問題は解決されません

37
ali rezaei

@import SafariServices;ステートメントを追加しようとすると、ゼロスイフトプロジェクトでこの警告が表示されました。

解決策:モジュールを有効にします。[ターゲット]> [ビルド設定]に移動し、[モジュールの有効化(CおよびObjective-Cモジュール)]を[〜#〜] yes [〜#〜]

I've circled the Build Settings toggle to change.

70
Peter Brockmann

考えられる原因は、Objective-C++を使用していることです。次に、適切なビルド設定にもかかわらず、モジュールが無効になります。

28
Aleks N.

.mmファイルまたはobjcファイル以外のファイルのどこかで#import "ProductName-Swift.h"を使用しているかどうかを確認してください。

Cppファイルでこのインポートを使用すると、モジュールが自動的に無効になるためです。

8
Uday Sravan K

ObjC、ObjC++、C++、およびMetalを混合しています。 「モジュールが無効になっているときに@importを使用する」というメッセージが表示されるたびに、次のコードを置き換えてみます。

@import Name; 

で:

#import "Name/Name.h"

例:

@import Metal;
@import MetalKit;
@import CoreVideo;

で:

#import "Metal/Metal.h"
#import "MetalKit/MetalKit.h"
#import "CoreVideo/CoreVideo.h"

うまくいくようです。

4
Warren Stringer