我正在尝试将自定义视图控制器添加到我的故事板中。视图控制器KTResearchUploadViewController
出现在“自定义类”类下拉列表中,我已选择它。在视图控制器内(在故事板上),我有一个链接到KTResearchUploadViewController
的按钮,可以在主要操作上调用方法handleUploadButtonPress
。
按下按钮时,我收到此错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController handleUploadButtonPress:]: unrecognized selector sent to instance 0x11c33b740'
看起来它试图在handleUploadButtonPress
而不是UIViewController
上呼叫KTResearchUploadViewController
。我在这里做错了什么?
KTResearchUploadViewController.h
#import <UIKit/UIKit.h>
@interface KTResearchUploadViewController : UIViewController
@end
KTResearchUploadViewController.m
#import "KTResearchUploadViewController.h"
@interface KTResearchUploadViewController ()
@end
@implementation KTResearchUploadViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)handleUploadButtonPress:(id)sender {
NSLog(@"Button pressed!");
}
@end
答案 0 :(得分:1)
将IBAction添加到.h
#import <UIKit/UIKit.h>
@interface KTResearchUploadViewController : UIViewController
- (IBAction)handleUploadButtonPress:(id)sender;
@end
还要确保IB中的按钮与代码之间存在连接
答案 1 :(得分:0)
我不确定这是否是原始问题的原因,但是我刚刚遇到了类似的问题,然后就此结束了。最终,我发现我的ViewController
子类不是我在Xcode中运行的目标的成员。出于某种原因,在这种情况下,它仅默认使用ViewController
。