我有两个 UIViewController 子类,它们都符合 UITextFieldDelegate 协议。IOW,我有这些课程。
# MyVC1.h
@interface MyVC1 : UIViewController <UITextFieldDelegate>
# MyVC1.m
@interface MyVC1 () {
// Private variable, so not a property
UITextField *_myTextField;
}
@end
@implementation MyVC1
- (void)viewDidLoad
{
_myTextField = [self textFieldwithPlaceHolderText:@"*Text"];
}
@end
MyVC2 类的代码相同,当然类名除外。
然而,这是奇怪的部分,我的代码为 MyVC1 编译,但不是为 MyVC2。对于 MyVC2,编译器说““MyVC2”没有可见的@interface 声明了选择器“textFieldwithPlaceHolderText”。MyVC2 缺少什么?我已经进行了双重和三重检查!