当的UITextField的清除按钮键盘上点击正在消失并不是文本(When clicking on

2019-07-30 06:09发布

在iPhone,我有鉴于其所具有UITextField 。当我上的清除按钮点击UITextField的键盘越来越消失,而不是在文本UITextField 。在iPad上samething工作正常。 请建议我,该怎么办? 提前致谢!!

Answer 1:

恰好离开现场,resignFirstResponder(如果要隐藏键盘),并返回NO /假

Note: set Attributes inspector property of UITextField 

清除按钮- >出现在编辑

so it will display 'X' button while editing in textfield.

// Objective-C的

-(BOOL)textFieldShouldClear:(UITextField *)textField
{
    textField.text = @"";
    [textField resignFirstResponder];
    return NO;
}

//斯威夫特

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


Answer 2:

您将uitextifield的委托后,试试这个代码

-(BOOL)textFieldShouldClear:(UITextField *)textField
{
     return true;
}


Answer 3:

首先,检查与您的所有代码块UITextField (特别是码yourTextField.hidden = YES;

把破发点,每个分析UITextField是可以实现的代表。

textFieldDidEndEditingtextFieldShouldEndEditingtextFieldShouldReturn.etc 。)

要么

实施textFieldShouldClear委托,在这里写代码可见光和清除UITextField

要做到这一点,你必须设置clearButtonMode如下,

yourTextField.clearButtonMode = UITextFieldViewModeWhileEditing;
yourTextField.delegate = self;

//For active keyboard again
[yourTextField becomeFirstResponder];

然后实现textFieldShouldClear委托

YourClass.h

    @interface className : UIViewController <UITextFieldDelegate>

YourClass.m

-(BOOL)textFieldShouldClear:(UITextField *)textField {
    yourTextField.hidden = NO;
    yourTextField.text = @"";
    return YES;
}


Answer 4:

只要确保U've给出这两个

editingTextField.delegate = self;
editingTextField.clearButtonMode = UITextFieldViewModeWhileEditing;

TextFieldShouldClear只需要,如果你需要做一些定制:-)

你在做这个方法的一些东西吗?

也许你是在呼唤这个委托方法resignFirstResponder,这就是为什么键盘是越来越驳回。

请通过委托方法,并检查乌尔做究竟是什么。



Answer 5:

此问题也发生了,如果你有

yourTextField.clearButtonMode = UITextFieldViewModeNever;

选中此行,将其删除或更改视图模式..



文章来源: When clicking on uitextfield's clear button keyboard is disappearing not text