我的设备无法显示图像阵列,但可以轻松找到单独的图像

时间:2015-05-26 17:33:16

标签: ios arrays image device

在我的应用的其中一个视图中,我希望使用以下代码显示由多个jpg图像制作的不同动画...

    for (i = 0; i <= HighPic; i = i+1) {

        [self.imageArray addObject:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"%@%i", imageName, i] ofType:@"jpg"]]];
    }

    float imageCount = [[[self.selfContent objectAtIndex:overPath] valueForKey:@"lastImageNumber"] floatValue]*2-1;

    imageView.animationImages = self.imageArray;

    [imageView setAnimationRepeatCount:0];
    imageView.animationDuration = (imageCount/25);
    [imageView startAnimating];

这在模拟器中运行良好,但是当我在我的设备上运行时,self.imageArray等于null。如果我反而写:

    [imageView setImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"%@0", imageName] ofType:@"jpg"]]];

即使在设备上也会显示正确的图片,但不是动画......

我没有使用

的原因
    [self.imageArray addObject:[UIImage imageNamed:[NSString stringWithFormat:@"%@%i", imageName, i]]];

是因为它占用了太多的记忆......

提前致谢!

1 个答案:

答案 0 :(得分:0)

我自己修复了代码。当我转到.h文件时,我看到imageArray已设置为weak,因此我将其替换为strong并修复了它:)