0
我有一个包含六个UITextField的视图的视图控制器。每当用户选择一个文本字段,我需要向上滚动事物。所以文本字段都将视图控制器设置为它们各自的代表。当委托方法触发时,它会调用滚动方法来滚动(如果键盘正在出现)或向下滚动(如果它正在消失)。滚动的方法是这样的:在文本字段之间切换时避免滚动
- (void) scroll: (CGFloat) distanceUp {
[UIView beginAnimations:@"Scroll" context:NULL];
//move some stuff up by distanceUp, or down if distanceUp is negative.
[UIView commitAnimations];
}
如果用户选择文本字段,输入一个值,然后点击键盘上的完成按钮,这工作正常。
问题出在用户直接从一个文本字段直接切换到另一个文本字段时。在这种情况下,发生的情况是视图向下跳,然后向上滚动。显然,我宁愿它只是保持原位。我该如何做到这一点?
这似乎只是模拟器中的一个问题(我之前遇到过),您是否在设备上测试过? – vodkhang 2010-07-18 04:01:07
你有没有考虑过使用scrollView作为父视图的一切需要滚动?您可以使用UIKeyboard-Notificatins而不是textFields委托来确定何时需要滚动。 – tonklon 2010-07-18 06:41:26