例如,我在Swift中有这个方法:
@objc class MyClass: NSObject
....
@objc class func viewWithIndex(index: Int, str: String) {
println(index, str)
}
然后我想在我的 Objective-C 类中调用该方法,我期望的调用方式如此简单:[MyClass viewWithIndex:10 str:@"string"];
但是它无法正常工作。
我该如何调用它?请帮忙。
注意:我已经有一个可以调用 Objective-C 的有效的 Swift 函数调用 [MyClass showSomething];
这意味着我已经成功设置了必要的桥接类设置。只有具有两个或更多参数的函数是我的问题。 :)
已解决:
我不知道发生了什么,但我刚刚重新启动了我的 Mac,并删除了 objc
,这样就可以使用调用 [MyClass viewWithIndex:10 str:@"string"];
。我记得在文档中读到过。
- 要在 Objective-C 中访问和使用 Swift 类,必须将其标记为 @objc 或者是 Objective-C 类的子类。
#import YOUR_PROJECT_NAME-Swift.h
? - vacawama@objc
后,使用调用[MyClass viewWithIndex:10 str:@"string"];
就正常工作了。 - Arnlee Vizcayno