为什么我不能访问 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 {
...
}
我有一个包含很多 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 {
...
}