Ipad 使用基于块的方法缩放动画
我有一个缩放动画,当我执行一个动作时,视图以缩放的方式出现 我用的代码是Ipad 使用基于块的方法缩放动画,ipad,ios4,core-animation,zooming,Ipad,Ios4,Core Animation,Zooming,我有一个缩放动画,当我执行一个动作时,视图以缩放的方式出现 我用的代码是 CGFloat xpos = self.view.frame.origin.x; CGFloat ypos = self.view.frame.origin.y; popContents.view.frame = CGRectMake(xpos+100,ypos+150,5,5); [UIView beginAnimations:@"Zoom" context:NULL];
CGFloat xpos = self.view.frame.origin.x;
CGFloat ypos = self.view.frame.origin.y;
popContents.view.frame = CGRectMake(xpos+100,ypos+150,5,5);
[UIView beginAnimations:@"Zoom" context:NULL];
[UIView setAnimationDuration:0.8];
popContents.view.frame = CGRectMake(320, ypos-70, 350, 350);
[UIView commitAnimations];
[self.view.superview addSubview:popContents.view];
我刚刚意识到,在ios4.0中,不建议以这种方式使用,建议使用基于块的方法制作动画
我试图寻找任何类型的例子,这将给我一个提示,以获得缩放效果,我需要使用基于块的方法,但我还没有找到任何
如果有人能帮我解决这个问题,那就太好了…我想出来了
显然,“zoom”只是一个名字,没有任何作用(就我的实验而言)
下面是我如何使用基于块的动画方法实现效果
[UIView animateWithDuration:0.8 animations:^ { popContents.view.frame = CGRectMake(160, 70, 350, 350);
[self.view.superview bringSubviewToFront:self.view];
[self.view.superview addSubview:popContents.view]; }
completion: ^(BOOL finished) {
NSLog(@"DONE");
}
];
现在只有一个问题我想不出来
以下是编辑后的代码-
[UIView transitionWithView:self.view duration:1
options:UIViewAnimationOptionTransitionFlipFromLeft
animations:^
{
popContents.view.frame = CGRectMake(160, 70, 350, 350);
[self.view.superview bringSubviewToFront:self.view];
[self.view.superview addSubview:popContents.view];
}
completion: ^(BOOL finished)
{
NSLog(@"DONE");
}];
所以这里发生的是,当popContents视图缩放到位置时,表视图会旋转。。我知道,自从我用view:self.view提供了transition之后,将会发生这样的事情
但是,如何才能将此效果添加到popContents视图(缩放到位置的视图)。。。可能吗
我尝试了transitionWithView:popContents.view,但这似乎对缩放动画没有任何附加效果
有人能告诉我我做错了什么吗