在受密码保护的 UITextField 上大写锁定图像



我正在创建一个需要使用USB键盘的应用程序。(普通触摸屏键盘已被禁用,不会显示。当用户首次安装应用时,他们需要创建一个四位数的 Pin。Pin 的输入字段受密码保护(因为每次输入新数字时都会出现点(。固定 UITextField 设置为除四个数字之外。任何其他字母/数字都不会添加到 UITextField。这就是它的样子——

链接到图像。

这里的问题是,当用户单击USB键盘上的大写锁定按钮时,大写锁定图像将出现在UITextField中。但是,该字段仅接受数字,因此我不在乎在文本字段中显示大写锁定图像。有没有办法删除大写锁定图像?

向右侧视图添加一个虚拟视图就可以了。感谢您的输入。

textField.rightView = UIView(frame: CGRect(x: 0, y: 0, width: 0, height: 0))

没有干净的方法可以做到这一点(我知道(,但是可以通过在出现大写锁定时放置白色图像来完成。

这样,大写锁定图像将始终处于隐藏状态。

请确保将 NSImageView 控件放在 NSSecureTextView 控件之后(在 UI 生成器中(,以便在绘制 NSSecureTextView 控件后绘制图像。

您可以将图像添加到文本归档中,就像下面给出的示例代码中给出的方式一样:

在UITextField中添加图标/图像

但是要检查您的大写锁定是否打开,我认为没有任何正确的方法可以做到这一点。也许您可以在"textFieldShouldReturn"方法中检查键入的字符是否为大写或小写,每次用户键入字符时。

最新更新