我想在之后执行代码 已点击UITextField的清除按钮,后文本字段已被清除。
textFieldShouldReturn:在>>之前调用文本字段。
textField:shouldChangeCharactersInRange:replacementString:在点击清除按钮时根本不会被调用
我的最终目标是在点击时点击被点击的字符串的图形表示。我使用了textField:shouldChangeCharactersInRange:replacementString:for,它运行良好,除非点击清除按钮。 (应删除图形表示)。
答案 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;