我正在开发一个使用动画的应用程序。为了给我的图像添加动画效果,我使用了一些 NSArray
:
@property (retain) NSArray * imagePig1;
当我第一次打开UIViewController
时,它可以工作。如果我用上一次打开它的方法第二次打开它,它就可以工作,但是当我打开一次并用另一个 ViewController 重新打开时,它会崩溃并给出如下错误:
如您所见,我编写了此类代码来为我的 UIImageView
制作动画:
-(void) AllocPigWithImage:(UIImageView *)ImagePig
{
[ImagePig stopAnimating];
[ImagePig setAnimationImages:_imagePig1];
[ImagePig setAnimationRepeatCount:INFINITY];
[ImagePig setAnimationDuration:(1/7)];
[ImagePig startAnimating];
}
请问如何解决?
谢谢!
编辑:这就是当我跨过所有这些断点时所遇到的情况:崩溃。但不知道如何查看哪个数组失败了:/
最佳答案
我将图像称为
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>"
)
关于ios - 应用程序因 startAnimating 方法而崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17468269/