我在Xcode中编程时遇到的一个更常见的错误是错误的选择器,无论是由于重命名还是重构或错误输入。它们无法避免,因为许多函数使用SEL参数,如按钮目标。
在构建期间未检测到它们,因此在发生运行时崩溃之前一切正常。
由于大多数选择器在编码时都是已知的,因此不需要动态,是否有更好的方法来指定SEL而不是仅仅使用@selector()?
如果没有,至少有一种方法可以在构建时至少由编译器检查CAN格式化@selector()吗?
全部谢谢!
- (void)viewDidLoad
{
UIButton* buttonBroken = [[UIButton alloc] initWithFrame: CGRectMake(100, 50, 100, 44)];
[buttonBroken addTarget: self action:@selector(theWrongFunction) forControlEvents:UIControlEventTouchUpInside];
[self addSubview: buttonBroken];
}
- (void)theRightFunction
{
// Everything compiled without warning or issues, but I never got a call :(
}