使用键盘书写时如何检测文本结束?

How to detect end of text when writing with keyboard?

当用户按下删除按钮删除文本时,我想检测到文本在文本字段上结束 textfield.So 当用户到达删除文本的末尾时,我想检测它。

我使用以下方法来完成任务,但我无法执行 it.Problem 是文本字段变空后的事件然后它不会 detect.When 我在文本字段变空后再次键入然后它检测到但是那个时间大小是 1 不是 zero.Please 给我一些建议?

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{

    if (textField == self.txt_Search)
    {
        NSLog(@"out if");
        if (![string isEqualToString:textField.text] )
        {
            if([self.txt_Search.text length]==0)
            {
                NSLog(@"finished writing");
            }
        }
    }
    return YES;

}

您可以检查范围来解决问题:

-(BOOL)textField:(UITextField *)textField
shouldChangeCharactersInRange:(NSRange)range
replacementString:(NSString *)string
{
    NSRange backspaceEndRange = NSMakeRange(0, 1);

    if (NSEqualRanges(range, backspaceEndRange)){
            NSLog(@"finished writing");
    }
    return YES;
}