IOS动画敲定

时间:2012-02-06 13:41:29

标签: ios animation

我有一个应用程序,动画从0到1的一些图像的alpha。如果我使用popToRootViewController返回到上一个视图,然后返回到此视图,则动画将从按下后退按钮的位置继续。此外,“动画电影”再次启动,而另一个动画仍在进行中。有两种电影一次播放。

我显示如下图像:

-(void)showStar2
{

    [UIView animateWithDuration:0.3f animations:^{
        [UIView setAnimationDelay:0.3];
        [stars[1] setAlpha:1];
        } completion:^(BOOL finished){
        [self showStar3];
    }];

当我按下后退按钮时,有没有办法停止动画过程?我试过了[self.view.layer removeAllAnimations],但它仍无效。

2 个答案:

答案 0 :(得分:0)

您需要导入QuartzCore.h文件。

#import <QuartzCore/QuartzCore.h>

每当你想停止动画时都要调用

[CATransaction begin];
[self.view.layer removeAllAnimations];
[CATransaction commit];

答案 1 :(得分:0)

在创建starView之前放置它(不知道它是如何调用的)

if (starView!=nil){
        [starView removeFromSuperview];
        [starView release];
        starView = nil;
    }
starView = [[UIView alloc] initWithFrame:frame];

这将在创建新图像之前删除您的图像。

或者在关闭视图时删除图像。