我有app我希望当用户输入任何数据时,视图应该向上滑动。 我正在编写此代码,此代码在另一个应用程序中工作正常,但在此应用程序中无效。我遵循相同的方式。
-(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);
}];
}
答案 0 :(得分: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];
}
此代码可以使用
答案 1 :(得分: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)];
}
一定会奏效。 :)
答案 2 :(得分:0)
在textFieldDidBeginEditing()
中调用您的方法showAnimationPests()
,同样在textFieldDidEndEditing()
调用showAnimationBack()
。
这对你很好。