如题所述。
IOS开发中,当textField的secureTextEntry属性为YES的时候,系统就会弹出指定类型的系统键盘,且不可切换到其他类型。但不符合我们开发要求,所以我们利用该特质,去实现我们的功能。
首先,我们需要把textField的secureTextEntry属性设为YES。随后,监听一下UIKeyboardWillShowNotification通知,在拉起的瞬间,把textField的secureTextEntry属性设为NO。这样就能实现我们的需求了。
但是,在键盘弹起的时候,如果我们执行返回主页面操作,再从后台回来,这时你会发现,键盘又从原生的变成自己安装的第三方键盘。为了在这种特殊情况下,也能实现功能,所以,我们还需要监听UIApplicationDidEnterBackgroundNotification和UIApplicationWillEnterForegroundNotification,在进入后台的时候,把键盘收起。在进入的时候,再拉起就行。
至此,基本实现我们需要的功能。
小结一下。该功能并不算复杂。借用了系统自带的功能,通过几个通知的监听,实现需求。但要注意考虑问题需要全面,从而减少漏洞。