滚动表视图选择文本字段

时间:2013-05-21 06:40:24

标签: iphone uiscrollview uitextfield uitableview

我有一个tableview,每个单元格上有一个文本字段,问题是tableview应该在选择文本字段时向上滚动。我附加了我的项目,请你告诉我我犯了什么错误。

这是您可以从此处http://pastelink.me/dl/9c2f89

下载的链接

我用来向上滚动的代码。

[super viewWillAppear:YES];
UITableViewCell *cellC = (UITableViewCell *)[[textField superview]superview];
[tabController scrollToRowAtIndexPath:[tabController indexPathForCell:cellC] atScrollPosition:UITableViewScrollPositionTop animated:YES];

3 个答案:

答案 0 :(得分:0)

您正在使用代码

[tabController scrollToRowAtIndexPath:[tabController indexPathForCell:cellC] atScrollPosition:UITableViewScrollPositionTop animated:YES];

仅当内容大小大于视图高度时才允许tableView滚动。

如果您提供更高的行数,上述代码将有效。例如:15

答案 1 :(得分:0)

cellForRowAt:

中正确归档已归档的文字
NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:[textField convertPoint:textField.frame.origin toView:self.tableView]];

当textField变为活动状态时,请使用scrollToRowAtIndexPath:atScrollPosition:animated:

用于滚动tableview

答案 2 :(得分:0)

看看这个项目here 将此类添加到您的项目并尝试使用它可能工作(TPKeyboardAvoidingTableView .h / TPKeyboardAvoidingTableView .m)。