今天通过自己的学习把textfield的代理方法全部罗列出来,先后调用顺序做了一下验证。
操作方法是,打开界面-->点击textField-->输入‘abc’-->点击‘x’清除按钮-->点击键盘‘换行’-->点击‘完成’
log日志:
4
2
4
1
1
1
5
7
6
3
pragma mark - textField delegate
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSLog(@"1");//输入文字时 一直监听
return YES;
}
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"2");// 准备开始输入 文本字段将成为第一响应者
}
-(void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"3");//文本彻底结束编辑时调用
}
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
NSLog(@"4");//返回一个BOOL值,指定是否循序文本字段开始编辑
return YES;
}
-(BOOL)textFieldShouldClear:(UITextField *)textField
{
NSLog(@"5");// 点击‘x’清除按钮时 调用
return YES;
}
-(BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
NSLog(@"6");//返回BOOL值,指定是否允许文本字段结束编辑,当编辑结束,文本字段会让出第一响应者
return YES;
}
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
NSLog(@"7");// 点击键盘的‘换行’会调用
return YES;
}
网友评论