0

我有我想要的应用程序,当用户输入任何数据时,视图应该向上滑动。我正在编写此代码,此代码在另一个应用程序中运行良好,但在此应用程序中不起作用。我遵循相同的方式。

-(void)showAnimationBack{

    NSLog(@"Back Animation is Working");


    [UIView animateWithDuration:0.5 
                     animations:^{
                         self.subViewLand.frame = CGRectMake(0,-10,1024,768);


                     }];

}


-(void) showAnimationPests{


    NSLog(@" Animation is Working");


    [UIView animateWithDuration:0.5 
                     animations:^{
                         self.subViewLand.frame = CGRectMake(0,-200,1024,768);


                     }];


}
4

3 回答 3

1
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    self.subViewLand.frame  = CGRectMake(0,-200,1024,768); // or to self.view.frame  = CGRectMake(0,-200,1024,768);
    [UIView commitAnimations];
}

- (void)textFieldDidEndEditing:(UITextField *)textField{
        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:0.5];
        self.subViewLand.frame = CGRectMake(0,-200,1024,768); // or to self.view.frame  = CGRectMake(0,-200,1024,768);
        [UIView commitAnimations];
} 

此代码将起作用

于 2013-03-13T06:17:05.950 回答
0

在 textfielddidBeginEditing 方法中设置这样的视图框架

 - (void)textFieldDidBeginEditing:(UITextField *)textField
{
   [self.subViewLand setFrame:CGRectMake(0, -200, 320, 480)];
}

在 textfielddidEndEditing 方法中按原样设置视图框架。

- (void)textFieldDidEndEditing:(UITextField *)textField{
    [self.subViewLand setFrame:CGRectMake(0, 0, 320, 480)];
} 

它肯定会奏效。:)

于 2013-03-13T06:16:26.457 回答
0

textFieldDidBeginEditing()调用你的方法showAnimationPests()和类似的textFieldDidEndEditing()调用showAnimationBack()

这对你来说很好。

于 2013-03-13T06:22:32.217 回答