应用程序崩溃与startAnimating方法

时间:2013-07-04 10:44:47

标签: ios objective-c animation uiimageview nsarray

我正在开发一个使用动画的应用程序。要为我的图片制作动画,我使用了一些NSArray

@property (retain) NSArray * imagePig1;

当我第一次打开UIViewController时,它会起作用。如果我第二次打开它打开它,它可以工作,但是当我打开一次并用另一个ViewController重新打开时,它会崩溃并给我一个错误:

Crash message

正如您所看到的,我制作了这类代码来动画我的UIImageView

-(void) AllocPigWithImage:(UIImageView *)ImagePig
{
    [ImagePig stopAnimating];
    [ImagePig setAnimationImages:_imagePig1];
    [ImagePig setAnimationRepeatCount:INFINITY];
    [ImagePig setAnimationDuration:(1/7)];
    [ImagePig startAnimating];
}

如何解决它?

谢谢!

编辑:当我跨过所有这些断点时,这就是我所拥有的:崩溃。但不知道如何查看哪个阵列失败:/

Fail

1 个答案:

答案 0 :(得分:1)

我将图片称为

self.imagePig1 = [NSArray arrayWithObjects:[UIImage imageNamed:@"imgres.jpeg"]
                  ,[UIImage imageNamed:@"images.jpg"], nil];

并使用了您的方法

-(void) AllocPigWithImage:(UIImageView *)ImagePig
{
    [ImagePig stopAnimating];
    [ImagePig setAnimationImages:_imagePig1];
    [ImagePig setAnimationRepeatCount:INFINITY];
    [ImagePig setAnimationDuration:(1/7)];
    [ImagePig startAnimating];
}

对我而言并没有崩溃。请交叉检查您的阵列分配代码。它必须看起来像NSLog

2013-07-04 18:56:04.324 imageTest[9330:c07] (
    "<UIImage: 0x7178520>",
    "<UIImage: 0x71771d0>"
)