我在现有Objc项目中执行一些SWIFT代码时遇到问题。这是我第一次尝试斯威夫特,所以我肯定我遗漏了一些简单的东西。
我已将新的swift文件添加到我的项目中-此过程生成了桥接头。所以现在我有以下几点:
桥接头文件
//
// Use this file to import your target's public headers
// that you would like to expose to Swift.
//
#import "historyViewController.h"
在我的swift文件中,我有以下测试类和函数:
import Foundation
@objc class Hello: NSObject {
func sayHello() {
print("Hi There")
}
}
在我的historyViewController.m文件中,我有以下内容
#import "xx-Bridging-Header.h"
在historyViewController.h文件中,我有以下内容
@class Hello;
如何在historyViewController.m文件中执行
sayHello
函数?我试过[Hello sayHello];
-但是得到了“不知道的类方法”。 最佳答案
问题是,您调用sayHello
时,将其视为类方法,但sayHello
声明为实例方法。所以:
[[Hello new] sayHello];
关于objective-c - Objective C项目中的Swift类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40054278/