UITextField在选中时清除,但如果没有输入则还可以恢复数据

Mir*_*318 3 uitextfield ios

我有一个带有UITextFields的表,我希望这样做,以便在选择文本字段时,清除当前信息(以允许新输入),但如果用户决定(在选择之后)他们不想更改它,我希望他们能够点击其他地方,之前的数据重新出现在文本字段中.

是否有捷径可寻?

And*_*der 7

一个很好的方法,这是一个很好的和用户友好的是使用该placeholder属性.将viewController设置为textfield的委托(如Andeh所述),然后添加以下代码:

- (void)textFieldDidBeginEditing:(UITextField *)textField {
    textField.placeholder = textField.text;
    textField.text = @"";
}

- (void)textFieldDidEndEditing:(UITextField *)textField {
    if (textField.text.length == 0) {
        textField.text = textField.placeholder;
    }
    textField.placeholder = @"";
}
Run Code Online (Sandbox Code Playgroud)

而且你已经完成了.如果UITextField页面上有多个s并且您不想对所有这些行为执行此操作,则可以对上述方法添加检查.