从 Swift 错误调用 Objective-C 方法

Bes*_*sat 4 objective-c swift

当我尝试从 swift 调用 Objective-C 方法时出现错误。我的 Objective-c .h 类:

@class myType;
@interface myClass : NSObject
- (myType *)myMethod;
Run Code Online (Sandbox Code Playgroud)

然后我将创建一个 myClass 对象并尝试在 swift 中调用 myMethod (我已经声明了 myClass 类型的一个对象):

let a = anObject.myMethod();
Run Code Online (Sandbox Code Playgroud)

但我收到错误:“myClass”类型的值没有成员“myMethod”如果我将 myType 更改为其他内容,错误就会消失。所以应该是swift中无法识别myType的问题..

我很感激任何帮助

Mar*_*n R 5

@class myType;
Run Code Online (Sandbox Code Playgroud)

只是该类的“前向声明”。为了调用

- (myType *)myMethod;
Run Code Online (Sandbox Code Playgroud)

无论是 Objective-C 还是 Swift 中的方法,编译器都需要知道该类的实际接口声明。所以“myType.h”或任何包含的文件

@interface myType : NSObject
// ...
@end
Run Code Online (Sandbox Code Playgroud)

必须包含在桥接头文件中。

备注:类名应以大写字母开头。