iOS 6 Secure密码UITextField造成非密码UITextField退格清空Bug

iOS 6 Secure密码UITextField造成非密码UITextField退格清空Bug,第1张

概述今天客户报了一个应用在iOS6上的bug,比如有一个secureTextEntry为Yes的UITextField和一个普通的UITextField,重现步骤:1. 点击普通的UITextField输入类容,2. 点击密码UITextField输入内容,3. 点击普通的UITextField重新获得焦点,4. 接着点击键盘上的退格键,结果:这时会发现普通的UITextField被清空了
今天客户报了一个应用在iOS6上的BUG,比如有一个secureTextEntry为Yes的UITextFIEld和一个普通的UITextFIEld,重现步骤:1. 点击普通的UITextFIEld输入类容,2. 点击密码UITextFIEld输入内容,3. 点击普通的UITextFIEld重新获得焦点,4. 接着点击键盘上的退格键,结果:这时会发现普通的UITextFIEld被清空了。经过研究查找发现这个BUG只在iOS6上有之前的没有,比较诡异。然后拿iOS6的ipad做了实验,发现settings里的iCloud里的apple ID和密码输入同样有这个BUG,个人觉得这应该是iOS6的一个系统小BUG,也许和iOS6 secureTextEntry为Yes的UITextFIEld的这个新特性有关:如果点击一个没有获得焦点有内容的secureTextEntry为Yes的UITextFIEld,然后点击键盘上的退格键,这样会清空这个UITextFIEld。这个新特性本来是为了提高用户体验,但却造成了一个fix起来比较纠结的BUG。为了修复此问题,只能去除UITextFIEld的secureTextEntry为Yes属性,但UITextFIEld又要有掩码的效果,所以只能写一个UITextFIEld子类,添加一个realValue属性来记录真实的值,重写setText/text方法来实现替换,但是密码字段的掩码效果是有几秒延时的(输入的类容大概一两秒后变成圆点)需要自己实现,所以修复起来比较纠结。目前还没有找到简单好的方法来fix这个问题,希望能看到好的解决方法或者我思路错了这其实不是一个BUG。记录一下,有待研究。
总结

以上是内存溢出为你收集整理的iOS 6 Secure密码UITextField造成非密码UITextField退格清空Bug全部内容,希望文章能够帮你解决iOS 6 Secure密码UITextField造成非密码UITextField退格清空Bug所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1089352.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存