我有一个名为TextFieldView的自定义视图类,它是从笔尖初始化的...

+ (TextFieldView *)textFieldView {
    NSArray *nibObjects = [[NSBundle mainBundle]
                           loadNibNamed:@"TextFieldView"
                                  owner:nil
                                options:nil];
    return (TextFieldView *)[nibObjects objectAtIndex:0];
}

我正在尝试创建一个名为EmailTextFieldView的子类,但是我不知道如何为它编写初始化程序。我目前的做法是...
+ (EmailTextFieldView *)emailTextFieldView {
    return (EmailTextFieldView *)[EmailTextFieldView textFieldView];
}

这会导致崩溃,因为我每次创建一个EmailTextFieldView并在其上调用EmailTextFieldView方法时,它都会崩溃,因为消息是发送到未实现该方法的TextFieldView子类的。如何为从笔尖创建的视图的子类编写初始化程序?

非常感谢您的智慧!

最佳答案

您的笔尖指定了它在身份检查器内部的类。如果要加载TextFieldView笔尖,并且使用TextFieldView的“自定义类”进行设置,则几乎已绑定到该对象。

如果要创建子类,则需要在Identity Inspector中将另一个笔尖设置为EmailTextFieldView。

10-08 07:48