如何在iPhone应用程序中随机移动图像数组

时间:2012-12-07 06:16:16

标签: iphone ios animation uiimageview

如何在iPhone应用程序中随机移动图像数组。

Bellow代码用于移动一个图像。我要使用一系列图像。

- (void)moveImage:(UIImageView *)image duration:(NSTimeInterval)duration
        curve:(int)curve x:(CGFloat)x y:(CGFloat)y
{
    [UIView beginAnimations:nil context:NULL];

    [UIView setAnimationDuration:duration];

    [UIView setAnimationCurve:curve];

    [UIView setAnimationBeginsFromCurrentState:YES];

    // The transform matrix
    CGAffineTransform transform = CGAffineTransformMakeTranslation(x, y);
    image.transform = transform;

    // Commit the changes
    [UIView commitAnimations];
}

- (void)viewDidLoad
{
    [super viewDidLoad];

    UIImageView *imageToMove =
    [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"fish.png"]];

    imageToMove.frame = CGRectMake(70, 120, 100, 100);

    [self.view addSubview:imageToMove];

    [self moveImage:imageToMove duration:1.0
              curve:UIViewAnimationCurveLinear x:0.0 y:110.0];

}

1 个答案:

答案 0 :(得分:0)

你可以用它来帮助你:

NSArray *animationArray=[NSArray arrayWithObjects:
                                  [UIImage imageNamed:@"img1.png"],
                                      [UIImage imageNamed:@"img2.png"],
                                      [UIImage imageNamed:@"img3.png"],
                                   [UIImage imageNamed:@"img4.png"],
                    nil];
UIImageView *animationView=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0,320, 460)];
    animationView.backgroundColor=[UIColor purpleColor];
    animationView.animationImages=animationArray;
    animationView.animationDuration=1.5;
animationView.animationRepeatCount=0;
    [animationView startAnimating]; 
    [self.view addSubview:animationView];       
    [animationView release];

这只是一个概念性代码,因此请根据您的需要进行更改。