UITextField 清除故障 - 文本突出显示,选择插入符号出现

Posted

技术标签:

【中文标题】UITextField 清除故障 - 文本突出显示,选择插入符号出现【英文标题】:UITextField clear glitch - text highlights, selection carets appear 【发布时间】:2015-01-19 15:45:21 【问题描述】:

当您点击清除按钮(小 X)时,我看到 UITextField 出现故障。在文本消失之前,选择插入符号出现(移动以选择文本的垂直线),然后文本突出显示,就像它被选中一样。这只会发生一瞬间——高亮和插入符号会闪烁,然后立即消失。事实上,文字确实很清晰——问题在于它是一个令人分心的视觉故障。

有人看过吗?

相关问题:当​​文本突出显示时,是否在某处发布了通知或调用了委托方法?我可以用它来检测闪光灯。但是,我似乎找不到任何东西......

【问题讨论】:

【参考方案1】:

我在 ios8 上也遇到过这个问题。我的班级正在观察UITextFieldTextDidChangeNotification。虽然我没有找到为什么会发生这种情况的解释,但我发现以下 UITextField 代表为我修复了它:

- (BOOL)textFieldShouldClear:(UITextField *)textField 
    textField.text = nil;
    return YES;

只需将“清除”上的文本字段文本置零 - 处理视觉故障。

【讨论】:

是的,我就是这么做的。 (实际上,我将它设置为 @"" 而不是 nil——不确定这是否会影响任何事情)。

以上是关于UITextField 清除故障 - 文本突出显示,选择插入符号出现的主要内容,如果未能解决你的问题,请参考以下文章