我正在尝试调整默认IOS行为的自动滚动距离。
如图所示,默认情况下,屏幕会自动向上滚动,以便键盘不会隐藏您正在编辑的部分。 但问题是它只能向上滚动到足以使键盘的顶部重叠在单元格的底部。
我想要的是这样的:
所以不要只是向上移动直到键盘不能覆盖textField,它应该向上移动一些额外的空间,以便可以看到下一个textField。
好的,现在我完成了描述。这是我尝试过的。 1.我试图委托didSelectRowAtIndexPath来汇总表格视图。 2.我尝试使用轻敲手势识别器来处理tapPosition,然后滚动。
这两种方法实际上在某种程度上起作用,但它们仍然不是我想要的100%。因为一旦我将焦点放在文本字段上,表格视图仍然没有移动得足够高,以便我可以看到下一个字段。 (在我看来,关注事件的textFields比点击手势和单元格选择具有更高的优先级)
现在这就是我想要的,我想知道是否有办法调整文本字段焦点上的默认向上滚动行为。
感谢。
答案 0 :(得分:0)
试试这个,
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
self.activeTextField = textField;
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.3f];
[self.scrollView setContentOffset:CGPointMake(0.0, self.activeTextField.frame.origin.y-92) animated:YES]; // change the value "92" as per your scroll height.
[UIView commitAnimations];
}