关于ios:如何在swift项目中使用C框架类?

how to use the objective c framework class in swift project?

本问题已经有最佳答案,请猛点这里访问。

当我开发了一个既有Swift文件又有目标C文件的框架时,当我访问Swift项目中的Swift类时,它运行得很好,但是当我试图访问Swift中的目标C类时,我无法访问,我也在Swift项目中桥接了目标C文件。有人能帮我解决上述问题吗?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//swift project
import ObjCSwiftFramework

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        let callingswiftfile = SwiftFile() //calling the swift file
       let callingobjectivecfile = ObjectiveCFile()//**Use of unresolved identifier 'ObjectiveCFile'**

    }

}


//Bridge file
#ifndef ObjCSwift_project_Bridging_Header_h
#define ObjCSwift_project_Bridging_Header_h
#import"ObjCSwiftFramework/ObjCSwiftFramework.h"
#endif

我还添加了框架屏幕截图供您参考enter image description here


为了在swift中使用objective-c文件,您需要我们桥接头文件,现在只需导入类名,如下所示

桥接文件名类似appname bidding header.h

enter image description here

创建桥接头

https://mycodetips.com/ios/manually-adding-swift-bridging-header-1290.html网站

在添加和导入obj-c类之后,文件将显示为

1
2
3
4
//
//  Use this file to import your target's public headers that you would like to expose to Swift.
//
#import"CardIO.h"

您需要使用桥接头。要知道如何创建桥接头,请使用下面的链接

https://mycodetips.com/ios/manually-adding-swift-bridging-header-1290.html网站