我在UIPopoverController中嵌入了一个UITableView,如下所示。
当我选择一个单元格时,单元格中的textField变为firstResponder。但是,不是将tableview滚动到顶部,所有内容都会消失(即使不超过4个单元格)。这种情况发生时无法滚动到顶部。解雇键盘后,一切正常。
以下代码无法解决问题:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
CRShoppingListItemCell *cell = (CRShoppingListItemCell *) [tableView cellForRowAtIndexPath:indexPath];
cell.itemTextField.enabled = YES;
cell.itemTextField.delegate = self;
[cell.itemTextField becomeFirstResponder];
[tableView scrollToNearestSelectedRowAtScrollPosition:UITableViewScrollPositionNone animated:YES];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
答案 0 :(得分:0)
我的猜测是你没有使用UITableViewController。在该控制器的viewWillAppear内部,它检查isInViewControllerThatHandlesKeyboardAvoidance(私有),其中一个控制器是弹出控制器。因此,如果是这样,那么当桌子全屏时通常会想要的键盘避免行为。