我正在尝试在目标C中创建一个基本方法(函数)并且遇到一些错误,这里是代码:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self setupWebView];
}
- (void)setupWebView {
NSLog(@"Testing");
}
我收到此错误:
实例消息的接收器类型“读取”未声明具有选择器“setupWebView”
的方法知道我做错了吗?
答案 0 :(得分:5)
编译器只会就接收器响应的内容达成一致,如果它已经看到为源行上面类声明了该方法。因此要么在类的@interface
声明中,在类的某个类别声明或实现中声明方法。
如果您不想在公开-(void)setupWebView
中导出@interface
,则最简单的方法是在@interface
文件中添加.m
的附加信息类:< / p>
// additional internal methods for my class
@interface MyClass ()
- (void)setupWebView;
@end
@implementation MyClass
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self setupWebView];
}
- (void)setupWebView {
NSLog(@"Testing");
}
@end
答案 1 :(得分:4)
您是否在课程标题中声明了-(void)setupWebView
?似乎编译器不认为您的类实现它。如果将其添加到标题中,则应解决问题。