图像没有动画效果

时间:2014-09-01 08:10:23

标签: ios iphone uiimageview

我想自动逐张滑动图片我从服务器上获取带有图像路径的图像,但它只显示一张图像,我该怎么做?

for (SliderDC *slider in imagesArray) {
        sliderImageName = slider.sliderImagePath;
           NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString: [NSString stringWithFormat:@"%@%@",kWSURL, sliderImageName]]];
           UIImage *imgOne = [UIImage imageWithData:imageData];
    ////        likely download all images from web service and create an array like
    //
          NSArray *imagesArrays = [NSArray arrayWithObjects:imgOne, nil];

////        and use with little modification
    //
        UIImageView* animatedImageView = [[UIImageView alloc] initWithFrame:self.view.bounds];
        animatedImageView.animationImages = imagesArrays;
        animatedImageView.animationDuration = 0.5f;
        animatedImageView.animationRepeatCount = 0;

        [self.view addSubview: animatedImageView];
        [animatedImageView startAnimating];
    }

1 个答案:

答案 0 :(得分:2)

因为您的数组始终只包含1张图像。您的代码应如下所示。

NSMutableArray *imagesArrays= [[NSMutableArray alloc]init];
for (SliderDC *slider in imagesArray) {
    sliderImageName = slider.sliderImagePath;
       NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString: [NSString stringWithFormat:@"%@%@",kWSURL, sliderImageName]]];
       if(imageData)
           UIImage *imgOne = [UIImage imageWithData:imageData];
           if(imgOne)
               [imagesArrays addObject:imgOne];
}

// after adding all image in array then add animation.
UIImageView* animatedImageView = [[UIImageView alloc] initWithFrame:self.view.bounds];
animatedImageView.animationImages = imagesArrays;
animatedImageView.animationDuration = 0.5f;
animatedImageView.animationRepeatCount = 0;

[self.view addSubview: animatedImageView];
[animatedImageView startAnimating];