当我尝试从swift调用objective-c方法时出现错误。 我的目标-c .h课程:
@class myType;
@interface myClass : NSObject
- (myType *)myMethod;
然后我将创建一个myClass对象,并尝试在swift中调用myMethod(我声明了一个类型为myClass的对象):
let a = anObject.myMethod();
但是我收到一个错误: 类型的价值' myClass'没有会员' myMethod' 如果我将myType更改为其他内容,则错误消失。所以它应该是一个不能在swift中识别myType的问题。
我感谢任何帮助
答案 0 :(得分:2)
@class myType;
只是该类的“前向声明”。为了打电话
- (myType *)myMethod;
来自Objective-C或Swift的方法,编译器需要知道 该类的实际接口声明。所以“myType.h”或其他什么 文件包含
@interface myType : NSObject
// ...
@end
必须包含在桥接头文件中。
备注:班级名称应以大写字母开头。
答案 1 :(得分:0)
显然,使用swift我更经常采取这些步骤..