【发布时间】:2015-04-14 09:59:57
【问题描述】:
有一个 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
【问题讨论】:
-
看来你的例子不是真正的代码?文件名与内容不匹配。具体来说,什么是“Test-Bridging-Header.h”。这是您手动创建的文件吗?你在 ObjectiveC.h 和 .m 的顶部导入了什么?
-
@MikeD 与这个问题正好相反。
标签: ios objective-c swift