为什么我不能将secureTextEntry与UTF-8键盘一起使用?

时间:2012-03-30 14:20:08

标签: ios utf-8 uitextfield

全部, 我遇到了这个问题,对于具有secureTextEntry = YES的UITextField,我无法显示任何UTF-8键盘(日语,阿拉伯语等),只有非UTF-8键盘(英语,法语等)。 。我在谷歌,这个网站和Apple开发论坛上做了很多搜索并看到其他人有同样的问题,但是没有实现我自己的UITextField,似乎没有人有一个合理的解决方案或答案是否这是一个bug或预期的行为。

如果这是预期的行为,为什么?是否有标准,白皮书,我可以查看的某个地方,然后指向我的产品经理,并说我们不能支持UTF-8密码?

谢谢,

1 个答案:

答案 0 :(得分:3)

我无法在Apple的文档中找到任何解释为什么会出现这种情况的内容,但是在创建测试项目之后,确实看起来确实如此。我猜想,对于使用复合字符的任何语言,我都不允许使用安全文本输入,因为它会使字符输入变得困难。

例如,对于日语输入,是否应该在键入后隐藏每个假名字符?或者只是汉字字符?如果是后者,字符保留在屏幕上的时间长度足够长,使得安全输入几乎没有实际意义。对于使用复合输入法的其他语言也是如此。

This post includes code for manually implementing your own secure input behaviour.