UITextField 监听获取textField的输入文本

今天在写项目的时候需要实现一个功能:在输入框的文字发生改变时判断当前输入的文字是否符合要求,刚开始用了kvo对textField的keyPath“text”进行了监听,事实证明这样写是没用的,kvo只有在你要结束输入时才返回改变的值,及新值,很明显kvo没有办法实现我想要的效果,后来用了以下的方法实现了该效果,代码如下:

1、首先给TextField添加监听事件:

 [_textfield addTarget:self  action:@selector(textFieldDidChange:)
            forControlEvents:UIControlEventEditingChanged];

2、实现监听的方法:

- (void) textFieldDidChange:(UITextField*) sender {
    if ([sender.text doubleValue] > [self.walletInfo.realDepositNum doubleValue]) {
        _alertLabel.text = moreThanRealPosit;
        _alertLabel.textColor = [UIColor redColor];
    }
    else {
        _alertLabel.text = lessThanRealPosit;
        _alertLabel.textColor = HEXCOLOR(0x999999);
    }
}

这里我是判断当输入的金额大于钱包总钱数,底部弹窗的label的状态将跟着发生改变;否则恢复原来的状态。

你可能感兴趣的:(UITextField 监听获取textField的输入文本)