ios - 应用程序因 startAnimating 方法而崩溃

标签 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

最佳答案

我将图像称为

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/

相关文章:

iphone - 单击 "OK"后首次运行时 GPS 未启动

ios - UITableView 设置背景颜色

objective-c - 核心数据和自反关系实体

iOS 应用程序崩溃 - 我怀疑它与使用 WebSockets 的 UIWebView 有关

ios - 在 iOS 上移动或复制大文件(> 100 MB)的最可靠方法是什么?

iOS 5 Storyboard - View Controller 中的 TableView

CSS 动画向前然后向后

android - CardView 触摸提升

ios - 通过旋转动画更改为不同的 View

ios - 如何为一个 Google Login API 使用多个 iOS bundle ID?