自动向下滚动到下一个UITextField

时间:2013-07-12 22:05:02

标签: ios objective-c uiscrollview uitextfield

在我的视图控制器中,我有5个UITextField,每个都从键盘或UIPicker获取不同的数据。我的所有不同元素都位于名为scrollView的scrollview的子类中。我的所有第一响应者都有一个工具栏作为他们的inputAccessoryView使用prev / next / done按钮,他们工作得很好。

我遇到的问题是我无法让滚动条自动向下滚动到下一个UITextField(以较小者为准)变为firstResponder以给它足够的空间看起来不错,请参考到这个屏幕截图供参考: enter image description here

我尝试使用此代码尝试获取我正在寻找的滚动但到目前为止没有运气...

- (void)keyboardControls:(BSKeyboardControls *)keyboardControls selectedField:(UIView *)field inDirection:(BSKeyboardControlsDirection)direction
{
    UIView *view = keyboardControls.activeField.superview.superview;
    [self.scroller scrollRectToVisible:view.frame animated:YES];
}

以下是我的简单scroller代码:

[scroller setScrollEnabled:YES];
[scroller setContentSize:CGSizeMake(320, 520)];

如果你能看到我遇到的问题,或者知道更好的解决方法,请让我知道......非常感谢你的帮助!谢谢!

1 个答案:

答案 0 :(得分:1)

您可以将textField放在tableView单元格中。然后视图将自动向下滚动。