【问题标题】:App crash with startAnimating method使用 startAnimating 方法的应用程序崩溃
【发布时间】:2013-07-04 10:44:47
【问题描述】:

我正在开发一个使用动画的应用程序。为了使我的图像动画化,我使用了一些 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];
}

请问如何解决?

谢谢!

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

【问题讨论】:

  • 不需要停止动画。刚开始动画..
  • 我没有看到错误,我看到了一个断点。
  • 在控制台中输入“断点列表”(不带引号),然后按 Enter。这应该为您提供当前断点的列表。在那里寻找断点 1.3 - 至少你会知道这个断点的条件。
  • 在我的断点列表中,我只有一个断点“所有异常”,默认没有?
  • 需要更多信息,伙计..wat 是你得到的例外,如果有的话??

标签: ios objective-c animation uiimageview nsarray


【解决方案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>"
)

【讨论】:

  • 我要去看看数组,因为它应该来自这里
  • 我的一个阵列看起来失败了,但我不知道是哪个。我已经编辑了
  • 请添加代码如何将图像添加到数组中,只有这样才能帮助我们解决您的问题
  • 它来自这里,如果一个条件不正确则添加失败(并且在重新加载视图控制器时不是),谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多