【发布时间】:2011-02-24 10:27:15
【问题描述】:
我有一个 scrollView,我想在选择 textField 时自动滚动它
(我在这里填写表格)
我正在使用以下方法滚动它
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
[scrollView setContentOffset:CGPointMake(0,50*(textField.tag-1))];
}
现在的问题是我有超过 10 个文本字段,当我到达第七个 textField 时,scrollView 滚动更多。 我还尝试打印 CGPointMake() 的值……它显示了正确的值……但是滚动条超出了预期的范围…… 看看下面的图片
以下2张图片显示了对textFields标签的控制
但当控件到达第 7 个文本字段时,它会滚动更多
在此之后它超出了界限。
仅当我从一个文本字段移动到另一个文本字段而不按下返回按钮时才会出现此问题(我的意思是 resignFirstResponder)。但是当我按下返回按钮然后转到下一个字段时,一切正常。
谁能建议问题出在哪里..?
【问题讨论】:
-
如果我可以提出替代解决方案:为此使用 tableview。所有这些都在表格视图中为您完成。只需制作一个自定义单元格或使用静态单元格,最后使用 scrollToRowAtIndexPath:atScrollPosition:animated: 进行滚动。
标签: iphone uiscrollview scroll uitextfield