iOS开发中,键盘事件一直是一件让开发者头疼的事,它不像安卓开发那样,系统会自动把输入框往上推,而iOS开发则不同,它需要开发者自己计算高度,并根据相应的需求去移动对应的View,这样的过程,机械重复,但又无法避免。过去的我,一直这样,在坑里爬着。。。
首先,我们来看看与键盘事件有关的几个需求:
1、页面有一个输入框,输入文字时,键盘弹出,如果挡着输入框,则需要把输入框或整个背景View往上推到合适的位置。
2、页面有好多输入框时,键盘应该不能挡着对应输入源的输入框。
3、页面的输入框可能不是单一层级,可能处于更深层级的View上,即View->View->…->输入框的层级关系时,以上需求依旧。