滚动以在UITableView页脚中查看文本框

时间:2011-04-21 09:49:28

标签: iphone uitableview scroll footer

我有一个文本框可以在UITableView页脚中输入代码。

当我单击文本框时,我出现了键盘,但我不知道如何让UITableView滚动以便文本框可见

这是什么代码示例?

2 个答案:

答案 0 :(得分:0)

由于页脚无法滚动到桌面视图的最低点,因此您需要将桌面视图向上移动以显示文本框。

这里有一个很好的博文:http://cocoawithlove.com/2008/10/sliding-uitextfields-around-to-avoid.html

答案 1 :(得分:0)

从以前的SO问题中获取此代码。

 - (void)textFieldDidBeginEditing:(UITextField *)textField
    {
        if(textField == birthdayTextField)
            [self animateTextField: textField up: YES];
    }


    - (void)textFieldDidEndEditing:(UITextField *)textField
    {
        if(textField == birthdayTextField)
            [self animateTextField: textField up: NO];
    }

    - (void) animateTextField: (UITextField*) textField up: (BOOL) up
    {
        const int movementDistance = 80;  //change this around
        const float movementDuration = 0.3f; //change this around

        int movement = (up ? -movementDistance : movementDistance);

        [UIView beginAnimations: @"anim" context: nil];
        [UIView setAnimationBeginsFromCurrentState: YES];
        [UIView setAnimationDuration: movementDuration];
        self.view.frame = CGRectOffset(self.view.frame, 0, movement);
        [UIView commitAnimations];
    }