将UITextField文本更改为(*)星号字符

我怎么能改变一个安全的UITextField文本(这只是一堆点),以(*)星号字符像下面的图像?

在这里输入图像说明

你可以通过编程来设置它

 [textField setSecureTextEntry:YES]; 

或IB(安全checkbox在底部)

在这里输入图像说明

你也可以尝试简单地实现你自己的“安全的文本字段”。

只需创build一个正常的,不安全的文本字段,并使用视图控制器中的方法将其“编辑已更改”操作链接起来。

然后在该方法中,每当文本发生变化时都可以使用新字符,并将它们添加到私有的NSString属性中,然后将textField的.text属性设置为只有星号的string(如果您愿意,也可以使用其他字符)。

更新:正如下面的hayesk所指出的,这个解决scheme不再是理想的,因为第三方键盘的引入暴露了对第三方应用程序的任何非安全文本字段的input,冒着收集这些信息的危险和/或添加它到自动更正的数据库。