我发现很多其他线程讨论过这个问题,但它们都不适用于我。
我的情况是,我有一个UITableViewController
和自定义UITableViewCell
并且UITextField
在其上显示。文字字段长按(UILongPressGestureRecognizer
)并成为第一响应者。
- (void) textFieldDidBeginEditing:(UITextField *)textField {
NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:point];
//self.tableView.contentSize = CGSizeMake(self.tableView.frame.size.width, 600);
[self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
点计算CGPoint point = [gestureRecognizer locationInView:self.tableView];
但它没有滚动表格视图。我做错了什么?任何建议或示例代码将不胜感激。
答案 0 :(得分:2)
在 textFieldDidBeginEditing 方法中添加此代码。它在我的应用程序中正常工作。现在我能够为所有tableview文本字段输入文本。
CGPoint offset = CGPointMake(0, selectedCellIndexPath.row * ROW_SIZE);
[self.tableViewObj setContentOffset:offset animated:YES];