iOS textfield代理方法调用的先后顺序(转)

查看原文

今天通过自己的学习把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;  
} 

 以上,收藏记录下

 

原文地址:https://www.cnblogs.com/fenglee594/p/7472333.html