iOS - UITextField代理方法详解(调用顺序)

UITextField 代理方法详解

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

你可能感兴趣的:(工作日志)