UITextField - clearButtonMode的委托?

时间:2016-02-25 08:33:53

标签: ios objective-c swift

我希望X按钮仅在

时显示
textField.clearButtonMode = .UnlessEditing

当用户按下X按钮时,textView成为第一个响应者,键盘弹出。

我该怎么办,当按下X按钮时,文本只会清除,但textView不会聚焦?

3 个答案:

答案 0 :(得分:0)

如果您希望它成为焦点并且能够键入,请尝试

textField.becomeFirstResponder()

如果您的意思是希望它不显示键盘而只是清除文本,您可以委派您的UITextField并使用该函数返回false:

func textFieldShouldBeginEditing(textField: UITextField) -> Bool {
    textField.text = ""
    return false
}

答案 1 :(得分:0)

- (BOOL)textFieldShouldClear:(UITextField *)textField

这个方法是你想要的,你可以检查一下。 https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITextFieldDelegate_Protocol/index.html#//apple_ref/doc/uid/TP40006991-CH3-SW10  我希望以上链接可以帮助你。

答案 2 :(得分:0)

您可以像下面这样实现此委托:

func textFieldShouldClear(_ textField: UITextField) -> Bool {
    textField.text = ""     

    return false
}