gpt4 book ai didi

ios - 在 swift 项目中从 Objective-C 调用 Swift 函数

转载 作者:搜寻专家 更新时间:2023-11-01 05:41:29 25 4
gpt4 key购买 nike

有一个 swift 项目,我在其中有一个 objective-C 文件。我想从 Objective-C 文件调用 Swift 类函数

最好的方法是什么?我已经使用 NSNotification 完成了它,但想知道是否有更好的方法来做到这一点。

Test-Bridging-Header.h

#import "ObjectiveC.h"

ClassA.swift

@objc class ClassA {

func f1() {

}
}

ObjectiveC.h

void objC_f1()

ObjectiveC.m

void objC_f1() {

//Create an instance of ClassA and call function f1
}

结论

  • 因为我有一个测试用例方案而引起了一些麻烦。
  • 当我创建一个没有测试用例方案的新项目时,它工作正常。
  • 请注意 - 生成的 -Swift.h 不会在项目导航器中列出
  • 这回答了我的问题 - How to call Objective-C code from Swift

最佳答案

来自 Apple 文档 Apple Doc Link :

Importing Swift into Objective-C

When you import Swift code into Objective-C, you rely on an Xcode-generated header file to expose those files to Objective-C. This automatically generated file is an Objective-C header that declares the Swift interfaces in your target. It can be thought of as an umbrella header for your Swift code. The name of this header is your product module name followed by adding "-Swift.h"

例如,如果您的产品名称是 MyApplication,您只需导入生成的文件 MyApplication-Swift.h

关于ios - 在 swift 项目中从 Objective-C 调用 Swift 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29624428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com