iOS9系统下使用UITextField的一个坑——内容从不可见到可见会多出一个空格


最近项目测试,在产品经理手机上发现一个问题——在UITextField输入密码后点击可见会发现光标往后移了一位即输入的内容多出一个空格。效果图如下:

然而我在自己测试过程中却没有发现这个问题,于是再次在我的测试机和模拟器上进行测试,在测试完所有模拟器和测试机后问题仍没有复现。于是想,可能是系统的问题,我的模拟器以及测试机都是iOS10.0的系统,而产品经理的手机系统是iOS9.2的,于是就又上网下载了9.0模拟器进行测试。果然,在9.0的模拟器上问题复现了。在上网查资料之后也找到了解决问题的方法,代码如下:

 NSString * text = _passwordField.text;

    _passwordField.text = @” “;

    _passwordField.text = text;

    _passwordField.secureTextEnt                                    

在点击显示按钮的时候先将一个为空格的字符串赋值给textfield,再将textfield原来的内容赋值给textfield。