为什么我不能访问 objective-c 方法,即使文件在桥中?

Why can't I access objective-c methods even though file is in bridge?

我有一个包含很多 objective-c 代码的项目。现在我想在我的 swift 文件中访问该代码。但出于某种原因,我无法访问 objective-c 方法,即使我可以启动该 class 的对象。

我有一个 bridge-file 添加了所有 .h 个名为 projectName-Bridge-Header.h

的文件
#import "NumberVerificationViewController.h"

并且它的路径被添加到 build-settings 中(附带问题:我可以从 class 启动一个对象,即使桥接路径没有添加到 build-settings . 为什么会这样?):

我可以从 class 初始化对象,但我无法访问方法:

var num = NumberVerificationViewController()
num.numberVerificationCallCompleted

最后一行报错,方法不存在。

我是 objective-c 的新手,所以它可能非常简单。不过,这超出了我的范围。

乍一看,您似乎缺少 .h 文件中的声明来创建方法 public。

NumberVerificationViewController.h
-(void)numberVerificationCallCompleted:(NSNumber*)responseNumber;

NumberVerificationViewController.m
-(void)numberVerificationCallCompleted:(NSNumber*)responseNumber {
    ...
}