UITextfield を拡張するクラスがあります。また、同じクラスを独自のデリゲートに設定しているため、テキスト フィールドを選択すると背景色を変更できます。テキスト フィールドを選択して数文字入力すると、アプリがロックしてクラッシュします。
ここに私の.mファイルがどのように見えるかがあります
@implementation MyTextField
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self)
{
self.delegate = self;
}
return self;
}
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"run did begine editing");
[self setBackgroundColor:[UIColor colorWithRed:0.204 green:0.239 blue:0.275 alpha:0.25]];
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"run did end editing");
[self setBackgroundColor:[UIColor clearColor]];
}
ここに.hがあります
@interface MyTextField : UITextField <UITextFieldDelegate>
@end