UITextField 占位符文本替换为 Hold to Dictate 消息

Posted

技术标签:

【中文标题】UITextField 占位符文本替换为 Hold to Dictate 消息【英文标题】:UITextField Placeholder Text Replaced by Hold to Dictate message 【发布时间】:2020-12-31 02:41:14 【问题描述】:

我有一些带有占位符文本的标准 UITextField。如:

let emailTextField = UITextField(frame: CGRect(x: textFieldX, y: textFieldY, width: textFieldW, height: textFieldH))
emailTextField.tag = TV_SIGN_IN_TEXTVIEW_EMAIL
emailTextField.placeholder = "Email"
parentView.addSubview(emailTextField)

当我进入屏幕时,它看起来像:

我单击文本字段并查看:

如果我在没有输入任何内容的情况下按下菜单按钮:

如上所示,文本字段的占位符文本现在显示“按住 [麦克风] 听写”而不是“电子邮件”。我检查了文本字段对象并检查了占位符文本,它仍然说它设置为“电子邮件”,所以我无法通过在离开键盘后重置占位符来修复它。它几乎似乎认为它仍然是焦点。聚焦另一个按钮不会导致它重置回占位符,实际上这可以同时显示在多个文本字段上。有什么方法可以将其重置为显示占位符文本?

【问题讨论】:

【参考方案1】:

尝试在文本字段上设置键盘类型。

在你的情况下:

emailTextField.keyboardType = .emailAddress

【讨论】:

退出键盘时没有带回占位符,=。它只是使用电子邮件样式键盘并将其更改为“按住 [mic] 拼写”。 @ksiit 你能解决这个问题吗?

以上是关于UITextField 占位符文本替换为 Hold to Dictate 消息的主要内容,如果未能解决你的问题,请参考以下文章

UITextField 的宽度永远不会小于占位符文本的宽度

如何调整 UITextField 占位符文本以适合 UITextField 宽度?

如何为 UITextField 中的占位符文本设置可访问性特征?

将占位符添加到 UITextField,如何以编程方式快速设置占位符文本?

如何实现占位符文本在 UITextField 中逐个字符消失

如何移动/动画 UITextField 占位符文本