ios tableView多个cell处理键盘遮挡内容视图的问题
2016-05-10 16:48
603 查看
首先是获取点击的textField在当前View中的位置,这里用到了坐标系转换的方法
CGPoint pt = [self.view
convertPoint:center fromView:cell];
然后在监听键盘弹出事件中,判断键盘是不是会遮挡住该输入框,算出遮盖的高度差,然后设置tableView的contentInset,多次尝试的是contentoffert不是很准确而且效果不是很好
NSDictionary *info = [notification
userInfo];
CGRect keyboardSize = [[info
objectForKey:UIKeyboardFrameEndUserInfoKey]
CGRectValue];
CGFloat height =
UI_CURRENT_SCREEN_HEIGHT -
self.selectTextFieldOffset -
64;
if (keyboardSize.size.height +
35 > height) {
CGFloat heightOffset =
IS_IPAD_DEVICE?0:55;
self.safeTableView.contentInset =
UIEdgeInsetsMake(0,
0, keyboardSize.size.height-heightOffset,
0);
self.safeTableView.scrollIndicatorInsets =
UIEdgeInsetsMake(0,
0, keyboardSize.size.height-heightOffset,
0);
} else{
self.safeTableView.contentInset =
UIEdgeInsetsZero;
self.safeTableView.scrollIndicatorInsets =
UIEdgeInsetsZero;
}
最后在键盘收回的方法中
self.safeTableView.contentInset = UIEdgeInsetsZero;
self.safeTableView.scrollIndicatorInsets = UIEdgeInsetsZero;
CGPoint pt = [self.view
convertPoint:center fromView:cell];
然后在监听键盘弹出事件中,判断键盘是不是会遮挡住该输入框,算出遮盖的高度差,然后设置tableView的contentInset,多次尝试的是contentoffert不是很准确而且效果不是很好
NSDictionary *info = [notification
userInfo];
CGRect keyboardSize = [[info
objectForKey:UIKeyboardFrameEndUserInfoKey]
CGRectValue];
CGFloat height =
UI_CURRENT_SCREEN_HEIGHT -
self.selectTextFieldOffset -
64;
if (keyboardSize.size.height +
35 > height) {
CGFloat heightOffset =
IS_IPAD_DEVICE?0:55;
self.safeTableView.contentInset =
UIEdgeInsetsMake(0,
0, keyboardSize.size.height-heightOffset,
0);
self.safeTableView.scrollIndicatorInsets =
UIEdgeInsetsMake(0,
0, keyboardSize.size.height-heightOffset,
0);
} else{
self.safeTableView.contentInset =
UIEdgeInsetsZero;
self.safeTableView.scrollIndicatorInsets =
UIEdgeInsetsZero;
}
最后在键盘收回的方法中
self.safeTableView.contentInset = UIEdgeInsetsZero;
self.safeTableView.scrollIndicatorInsets = UIEdgeInsetsZero;
相关文章推荐
- iOS:使用第三方DOM解析XML文件
- Coding编译连接过程中遇到的问题及解决方法(iOS)
- IOS开发学习-XCode7真机调试-2
- iOS颜色转换
- ios的下载链接中?mt=8||?mt=12的含义
- iOS 侧滑返回手势
- iOS开发的一些奇技
- iOS的内存管理
- iOS集合遍历
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发之静态库.a的制作教程
- 传智播客iOS培训:做被争抢的iOS开发者
- iOS自定义年月日
- iOS 系统发邮件,发短信,打电话,粘贴板
- iOS开发——二级列表
- iOS中 单例设计模式 的使用方法
- iOS左滑手势返回的实现
- 断点下载/断点续传
- iOS手机号判断方法
- iOS播放gif图方式