我正在使用Objective-C来使用Swift代码,我最终将其转换为Framework / SDK。 我不能专门调用Objective-C的类方法,而且我收到了这个错误
No visible @interface for 'class' declares the selector 'method'
Swift文件
public class Example {
public class func testOne() -> NSString {
return "testOne";
}
public func testTwo() -> NSString {
return "testTwo";
}
}
Objective-C文件
#import <ProjectModuleName-Swift.h>
@interface ...
@end
@implmentation ...
- (void) testing {
Example *example = [[Example alloc] init];
NSString *testOne = [example testOne]; // does not work ; No visible @interface for 'Example' declares the selector 'testOne'
NSString *testTwo = [example testTwo]; // does work
}
@end
显然,通过声明class func
它应该需要一种不同的方式来通过Objective-C调用它,但我还没有看到关于这个主题的任何文档。
非常感谢一个例子或帮助。
答案 0 :(得分:2)
在类上调用类方法,而不是类的实例:
NSString *testOne = [Example testOne];
NSString *testTwo = [Example testTwo];