如何将Obj-C框架导入Swift桥接头文件中?

12 浏览
0 Comments

如何将Obj-C框架导入Swift桥接头文件中?

每当我将框架头文件导入到我的项目中时,我总是遇到问题。例如,这张截图中的我的小试验项目。当我导入Facebook SDK头文件时,我做错了什么?这是一个非常简单的步骤,但我找不出问题出在哪里。我甚至按照Facebook开发者网站上的步骤一步一步地进行了操作。

编辑:对不起,也许我没说清楚。已经设置了桥接头文件,并且在构建设置中设置了桥接头文件的位置路径。所以会产生错误,因为它被包含在编译中。问题在于,使用当前的导入Facebook SDK和桥接头文件的设置,我无法将Facebook SDK导入到桥接头文件中。

我尝试过以下方法:

  • #import "FBSDKCoreKit/FBSDKCoreKit.h"
  • #import
  • #import "FBSDKCoreKit.h"
  • #import
  • #import "FBSDKCoreKit.framework/FBSDKCoreKit.h"
  • #import

它们都不起作用(它们都会产生像截图中的错误,这意味着桥接头文件没问题,并且已包含在编译中,但它找不到我引用的头文件)。

0
0 Comments

原因:问题出现的原因是因为framework文件没有存储在项目文件夹中,而是存储在下载文件夹中。在导入时,没有勾选“如果需要,复制文件”复选框。

解决方法:根据这个答案,我发现需要在搜索路径中填写framework基础文件夹的路径,以便Xcode能够找到它。感谢所有回答的人。

0
0 Comments

在这个问题中,用户想要了解如何将Objective-C框架导入到Swift的桥接头文件中。下面我们将整理出问题的原因以及解决方法。

问题的原因:

用户想要在Swift项目中使用Objective-C框架,但是在导入框架时遇到了困难。他们可能没有正确设置桥接头文件,或者没有删除不需要的文件。

解决方法:

1. 首先,打开Xcode并创建一个新的Objective-C文件。可以选择任何名称,比如"abc"。

2. 点击下一步并创建文件。

3. 在顶部将会显示一条消息,选择创建桥接头文件。这个文件的命名规则是"项目名称-Bridging-Header.h"。

4. 删除刚创建的"abc.h"文件。

5. 打开"项目名称-Bridging-Header.h"文件,并导入Objective-C框架。

6. 完成以上步骤后,就可以在Swift文件中使用Objective-C框架了。

下面是整理后的代码:

// 创建Objective-C文件
New File -> iOS Source -> Objective-C File -> Enter whatever (Example "abc") name -> Next, Create
// 创建桥接头文件
Will show message on the top, choose Create Bridging Header
// 删除不需要的文件
Delete abc.h
// 导入Objective-C框架
Click ProjectName-Bridging-Header.h -> import
// 完成
Finish

通过按照上述步骤操作,用户就能够成功将Objective-C框架导入到Swift的桥接头文件中,从而在Swift项目中使用Objective-C框架。

0
0 Comments

如何将Obj C框架导入Swift桥接标题?

问题的原因:在使用Swift编写的项目中,需要导入Objective-C框架,但是遇到了一些问题,无法成功导入。

解决方法:通过创建一个Obj C桥接文件来将Objective-C框架导入Swift项目中。

步骤如下:

1. 创建一个Obj C桥接文件,可以通过选择File -> New -> Source -> Header File来创建。将文件命名为AppName-Bridging-Header。

2. 在Obj C桥接文件中添加以下代码(以SDWebImage为例):

#ifndef AppName_AppName_Bridging_Header_h
#define AppName_AppName_Bridging_Header_h
#import 
#import "UIImageView+WebCache.h"
#endif

或者只需要导入特定的文件,可以使用以下代码:

#import "UIImageView+WebCache.h"

3. 在项目的Build Settings中,找到Swift Compiler - Code Generation,确保Objective-C Bridging Header设置的路径正确。路径应该指向Obj C桥接文件的位置,例如testSD/testSD-Bridging-Header.h或testSD-Bridging-Header.h。

4. 如果仍然无法成功导入Objective-C框架,可以尝试添加“-ObjC”链接标志。

- 选择项目导航器中的项目文件。

- 选择要添加链接标志的目标。

- 选择“Build Settings”选项卡,选择“All”以显示所有Build Settings。

- 向下滚动到“Linking”部分,双击右侧的“Other Linking Flags”。

- 一个框将出现,点击“+”按钮以添加一个新的链接标志。

- 输入“-ObjC”(不带引号)并按回车键。

通过创建Obj C桥接文件,并设置正确的路径和添加链接标志,可以成功将Objective-C框架导入到Swift项目中。如果仍然遇到问题,可以尝试添加搜索路径来解决问题。

0