给数字键盘添加完成按钮的坑

keyboardType=UIKeyboardTypeNumberPad的textField左下角添加完成按钮:用的是假按钮覆盖的办法,不是自定义整个键盘。


思路是

监听系统通知UIKeyboardWillShowNotification,获取系统动画的参数,然后给自己造的的完成按钮做和系统同步的升起键盘动画,达到以假乱真的效果。

再监听UIKeyboardWillHideNotification通知做相反的退下键盘动画(我这里直接remove了,没做动画,因为按钮在底部,视觉残留察觉不到哈)。


本来已经以假乱真了,但是当有多个textField,并且其中有非UIKeyboardTypeNumberPad的textField的secureTextEntry属性为YES的时候,textField之间切换的时候UIKeyboardWillShowNotification通知发送的时机就不对了:

原来是:keyboardType不同的texdField之间切换的时候会发UIKeyboardWillShowNotification通知

现在是:secureTextEntry=YES && keyboardType=UIKeyboardTypeDefault 和 keyboardType=UIKeyboardTypeNumberPad 之间切就不发通知了,感觉是变成同一种了。。。他们只有和secureTextEntry=NO && keyboardType=UIKeyboardTypeDefault的textField切的时候会发通知。


感觉secureTextEntry属性让UIKeyboardWillShowNotification通知错乱了。。。求解!



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值