UITextField的安全文本输入和自动更正之间的交互是什么?

时间:2012-11-09 14:51:01

标签: cocoa-touch uitextfield

在iOS应用中使用UITextField时,我可以将安全文本条目设置为YES,这将隐藏除字段中输入的最后一个字符之外的所有字符。但是,我也可以同时启用自动更正。

有谁知道那种情况会发生什么?如果我的密码是“香蕉”,并且我开始在字段中输入密码,那么如果文本也是自动修正的话,对文本进行遮挡没有帮助。

1 个答案:

答案 0 :(得分:1)

正如@Michael Kernahan所说,这是一个有趣的思想实验。我之前从未想过它,只是为了确保我的预感不会自动更正字段保持为真,我创建了一个小的Xcode项目来测试这个概念。

在IB中创建(公认的粗略)接口后,我使用默认的omw自动更正来测试该字段作为控件。如果没有在字段上专门启用自动更正,则会发生自动更正。

Autocorrect works!

我通过调用

将字段设置为安全
[secureTextField setSecureTextEntry:YES];

再次运行测试。测试失败,字段没有自动更正。

Autocorrect doesn't work :(

最后,正如您在问题中所述,我将安全文本字段autoCorrectionType设置为UITextAutocorrectionTypeYes,测试再次失败。

Autocorrect doesn't work yet again :(


更简单地回答您的问题,根据这些测试,设置UITextField以获取安全输入会禁用字段的自动更正属性,无论是否明确启用(如预期和应该是)。