编译器检查@selector(methodName)方法是否实现

来源:互联网 发布:php基础面试题及答案 编辑:程序博客网 时间:2024/06/14 02:55

默认的情况下:

UIButton *bt = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[bt addTarget:self action:@selector(methodName) forControlEvents:UIControlEventTouchUpInside];


如果 @selector(methodName) 中的methodName方法没有实现,编译器还没有检查出错误,此时如果点击按钮,程序将崩溃。


为了避免程序崩溃这个麻烦,可以配置应用选项中的:Undeclared Selector  选项
,改成YES,这样 就会在这行[bt addTarget:self action:@selector(methodName) forControlEvents:UIControlEventTouchUpInside]; ,出现一个警告。