以编程方式触发textFieldShouldClear

时间:2014-11-25 17:13:23

标签: ios objective-c uitextfield uitextfielddelegate

如果我理解正确,一旦用户点击提供并启用了UITextFieldDelegate的清除按钮/图标,就会触发textFieldShouldClear方法UITextField。但我需要以编程方式清除UITextField,在没有明确的UITextField方法(我能找到)的情况下,我这样做:

textField.text = @"";

但是,上述内容并未触发我需要的textFieldShouldClear委托方法。我有什么想法可以做到吗?

或者,上面的调用会触发任何其他委托方法吗?我查了一下,在这种情况下没有调用textInputChanged

2 个答案:

答案 0 :(得分:0)

如果以编程方式设置文本,则不会触发TextField委托方法。

Related Question

你可以在textField.text = @"";行之后执行任何需要做的逻辑,对吗?

答案 1 :(得分:0)

我最终继承了UITextField并实现了以下方法:

- (void)setText:(NSString *)text {

    [super setText:text];

    [self textInputChanged:nil];
}

textInputChanged:是我需要以编程方式设置文本时调用的UITextFieldDelegate方法。