美文网首页
iOS IQKeyboardManager 遇见的bug

iOS IQKeyboardManager 遇见的bug

作者: 烟雨痕 | 来源:发表于2018-04-10 19:32 被阅读14次

一、IQKeyboardManager遇见的问题:键盘回收时,tableView的headerView被遮挡。

  解决两种方式:

  方式一:

 [self.tableView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:YES];

  方式二:

 [self.tableView setContentOffset:CGPointMake(0, 0) animated:YES];

  当键盘回收后,tableView的headerView被挡道:  当键盘回收后,tableView的headerView被挡道:

被遮挡

  正常情况下界面显示图如下:  正常情况下界面显示图如下:

正常显示

二、IQKeyboardManager导致view上移,被导航栏遮挡。

具体原因没有查找到。

解决方式一:监听键盘将要消失的通知,在selector方法内修改containView的frame。

修改containView的frame

解决方式二:viewDidLayoutSubviews 方法中修改view的frame

- (void)viewDidLayoutSubviews {

    if (CGRectGetMinY(self.view.frame) != SafeAreaTopHeight) {

        self.view.frame = CGRectMake(0, SafeAreaTopHeight, WindowWidth, WindowHeight - SafeAreaTopHeight);

    }

    debugLog(@"view_frame = %@",NSStringFromCGRect(self.view.frame));

}

相关文章

网友评论

      本文标题:iOS IQKeyboardManager 遇见的bug

      本文链接:https://www.haomeiwen.com/subject/njvolxtx.html