动态获取Textfield输入的内容

在iOS7以下我们可以通过UITextField的delegate方法来获取

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

{

    NSString *text = [textField.textstringByReplacingCharactersInRange:range withString:string];

    return YES;

}

但是今天发现了在iOS7上如果当输入中文的时候,到最后只会识别到的只是拼音的字符串,而不是最后的中文。如“你好”,最后只会是nihao。我们可以通过以下的方法来获取

 [textField addTarget:self action:@selector(textFieldEditChanged:) forControlEvents:UIControlEventEditingChanged];

添加输入改变的方法

- (void)textFieldEditChanged:(UITextField *)textField

{

    NSLog(@"textfield text %@",textField.text);

}

这样我们就可以获取到UITextField当前输入的内容了,我们可以通过判断系统的版本来对输入进行不同的操作,这样就可以避免重复的工作。

原文地址:https://www.cnblogs.com/wangbinios/p/5313863.html