Mad*_*vad 6 default clear textfield ios
简短版本:如何使UITextField框删除用户首次按键上的所有内容?在用户开始输入内容之前,我不希望删除信息.即,在开始编辑时清除它是不够的.
long version:我有三个循环的UITextField(使用返回键并在"shouldReturn"方法中捕获按钮.UITextField中已有文本,如果用户没有输入任何内容,只是转到下一个UITextField ,值应保持不变(默认行为).
但我希望如果用户开始输入,它会自动清除文本.类似于整个字段突出显示,然后键入任何东西删除fiels然后添加用户按键.
"编辑开始时清除"并不好,因为文本会立即清除出现在字段中的光标.那是不可取的.我以为我可以在这里使用占位符,但这不能作为默认值,我找不到默认值属性.突出显示和选定属性在这方面也没有做任何事情.
像这样在文件中声明一个BOOL变量.h。
BOOL clearField;
Run Code Online (Sandbox Code Playgroud)
并实现委托方法,例如:
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
clearField = YES;
}
-(void)textFieldDidEndEditing:(UITextField *)textField
{
clearField = NO;
}
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
clearField = NO;
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
if(clearField)
{
textField.text = @""
clearField = NO;
}
}
Run Code Online (Sandbox Code Playgroud)