我有一个自定义继承UIView
类,其中一个UITableView
作为其唯一的子视图。我试图模仿UITableViewController
显示键盘时的正常功能,以将表格视图的contentInset
和调整scrollIndicatorInsets
到键盘的高度。这是我在自定义UIView
类中显示键盘时调用的方法:
- (void)keyboardDidShow:(NSNotification*)notification
{
NSDictionary* info = [notification userInfo];
CGSize kbSize = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size;
_tableView.contentInset = UIEdgeInsetsMake(0.0, 0.0, kbSize.height, 0.0);
_tableView.scrollIndicatorInsets = _tableView.contentInset;
}
这在一定程度上有效,但由于某种原因,键盘与表格视图仍有一些重叠,可能有十个左右的像素。
我认为这与不考虑其他一些屏幕几何形状有关,但我不明白这是怎么回事。键盘的高度应该正是我所需要的,因为 tableView 一直延伸到屏幕底部。有任何想法吗?