1

我正在开发 iPad 应用程序。在一个视图中,我们有 10 个文本字段。当我在 iPad 中查看它们时,底部的文本字段隐藏在键盘后面。

我希望文本字段在隐藏在键盘后面时向上滚动。

非常感谢任何帮助

提前致谢。

4

2 回答 2

3

使用 UIScrollView 并将您的 UI 控件放在滚动视图中。在 viewDidLoad 中保留滚动视图的内容偏移量。(在下面的代码中,scrollOffset 是 CGPoint 类型。

scrollOffset = scrollView.contentOffset;

在 UITextField 委托中为滚动视图设置一个新的内容偏移量。

- (void)textFieldDidBeginEditing:(UITextField *)textField {

    CGPoint scrollPoint;
    CGRect inputFieldBounds = [textField bounds];
    inputFieldBounds = [textField convertRect:inputFieldBounds toView:scrollView];
    scrollPoint = inputFieldBounds.origin;
    scrollPoint.x = 0;
    scrollPoint.y -= 90; // you can customize this value
    [scrollView setContentOffset:scrollPoint animated:YES];            
}

在 textfiedlshouldreturn 委托中,重置滚动视图的内容偏移量。

- (BOOL) textFieldShouldReturn:(UITextField *)textField { 
    [scrollView  setContentOffset:scrollOffset animated:YES]; 
    [textField resignFirstResponder]; 
    return YES; 
}
于 2012-05-04T03:14:20.477 回答
0

您可以使用键盘的通知。显示键盘时您会收到 UIKeyboardWillShowNotification,然后您可以根据需要移动或滚动您的项目。

最好的问候伯恩哈德

于 2012-05-03T11:13:38.823 回答