iOS tipsiOS学习记录

IQKeyboardManager - 键盘事件处理(1)

2016-05-10  本文已影响2953人  居然是村长

https://github.com/hackiftekhar/IQKeyboardManager/tree/v3.3.7
star 5000 +

这个使用不需要任何设置,拖入框架即可,自动控制键盘弹出事件。对任何输入控件全部有效。
注:该框架表示,如果出问题,比如兼容性问题等,概不负责;
注2:3.3.7 支持ios7。4.0开始只支持iOS8了。

可能会用

// 设置输入框与键盘间距
    [IQKeyboardManager sharedManager].keyboardDistanceFromTextField = 44.;
    
// 默认键盘上面有toolbar,不要的话设置NO
    [IQKeyboardManager sharedManager].enableAutoToolbar = NO;
    

// 这个注意,是按照代码顺序的上一个下一个。
    if ([[IQKeyboardManager sharedManager] canGoNext]) {
        [[IQKeyboardManager sharedManager] goNext];
    } else {
        [self.view endEditing:YES];
    }

其他

toolbar 也可以自定义。
一般也没有什么其他好设置的。

问题

1.由于全屏布局下,对viewController上的第一个scrollerView,会有contentInset 自动添加64px,IQKeyboard 对scrollerView做了处理,使得contentInset与scrollerView一致,相当于有添加了64px;但是在键盘隐藏时,并没有-64处理,所有会导致本来可能不会滚动的scrollerView,变成可以滚动。
解决1:self.automaticallyAdjustsScrollViewInsets = NO;
解决2:xib或者sb中直接将self.view 继承UUIScrollerView;但是约束方面自己注意。

1

上一篇下一篇

猜你喜欢

热点阅读