文本字段清除后的回调

时间:2015-07-25 10:47:55

标签: ios uitextfield

我想在之后执行代码 已点击UITextField的清除按钮后文本字段已被清除。

textFieldShouldReturn:在>之前调用文本字段。

textField:shouldChangeCharactersInRange:replacementString:在点击清除按钮时根本不会被调用

我的最终目标是在点击时点击被点击的字符串的图形表示。我使用了textField:shouldChangeCharactersInRange:replacementString:for,它运行良好,除非点击清除按钮。  (应删除图形表示)。

1 个答案:

答案 0 :(得分:2)

这是一个想法:您可以用自己的按钮替换系统清除按钮。您需要自己处理清除文本字段(非常简单),然后您可以执行自定义动画,而不是。

创建一个按钮并将其设置为rightView的{​​{1}}:

UITextField

处理行动:

UIButton *clearButton = [UIButton buttonWithType:UIButtonTypeSystem];
clearButton.frame = CGRectMake(0, 0, 45, 45);
clearButton.tintColor = myTextField.tintColor;
[clearButton setImage:[UIImage imageNamed:@"MY_CLEAR_IMAGE.png"] forState:UIControlStateNormal];
[clearButton addTarget:self action:@selector(onTextfieldClearButtonTouchUpInside:) forControlEvents:UIControlEventTouchUpInside];

myTextField.rightView = clearButton;
myTextField.rightViewMode = UITextFieldViewModeWhileEditing;