2

キーボードが存在するときにUITextFieldを上に移動させる方法は? - ここで提案されているすべての方法を試しましたが、キーボードに基づいてスクロールビューが上に移動しません。テキストがキーボードに近づくと、ドキュメントが上に移動するため、iPad のメモのような動きを実装したいと考えています。

4

2 に答える 2

9

これが私がそれを行う方法です。UITextField にデリゲートを設定することを忘れないでください

- (void) scrollViewAdaptToStartEditingTextField:(UITextField*)textField
{
    CGPoint point = CGPointMake(0, textField.frame.origin.y - 1.5 * textField.frame.size.height);
    [scrollView setContentOffset:point animated:YES];
}

- (void) scrollVievEditingFinished:(UITextField*)textField
{
    CGPoint point = CGPointMake(0, 0);
    [scrollView setContentOffset:point animated:YES];
}

- (BOOL) textFieldShouldBeginEditing:(UITextField *)textField
{
    [self scrollViewAdaptToStartEditingTextField:textField];
    return YES;
}

- (BOOL) textFieldShouldReturn:(UITextField *)textField
{
    [textField resignFirstResponder];
    [self scrollVievEditingFinished:textField];
    return YES;
}
于 2012-11-05T15:33:31.267 に答える