从Swift错误调用目标C = Class没有调用成员

时间:2014-11-25 18:57:30

标签: objective-c xcode swift

我正在尝试从Swift调用Objective-C类。所以我启用了桥接标题选项

创建以下文件:

MyTest.h:

#import <Foundation/Foundation.h>

@interface MyTest : NSObject
+(void)sayHello;
@end

MyTest.m

@implementation MyTest

+(void)sayHello {
    NSLog(@"Hello");
}

@end

MyProject-Bridging-Header.h添加:

#import "MyTest.h"

然后在Swift文件中我调用:

let test = MyTest()
test.sayHello()

编译器在第二行抱怨:

MyTest does not have a member named 'sayHello'

我做错了什么?

注意:我没有使用Objective-C的经验。

1 个答案:

答案 0 :(得分:0)

您创建了一个类方法,而不是实例方法。

尝试改为:

MyTest.sayHello()

或将objective-c函数更改为:

-(void)sayHello

请注意-而不是+。有关详细信息,请参阅此question and answers