在iOS中运行设备动画时崩溃

时间:2015-06-05 07:01:29

标签: ios

我创建了一个带有4个图像的简单动画..它在模拟器中运行但在设备中它会崩溃.. 代码:

- (void)viewDidLoad {
    [super viewDidLoad];

    [self flashOn:_myButton];


    NSArray *imageNames= @[@"jake_2.png",@"jake_4.png",@"jake_5.png"];
    // Do any additional setup after loading the view, typically from a nib.
    NSMutableArray *images = [[NSMutableArray alloc] init];


    for (int i = 0; i < imageNames.count; i++)
    {
        [images addObject:[UIImage imageNamed:[imageNames objectAtIndex:i]]];
    }
        UIImageView *slowAnimationImageView = [[UIImageView alloc] initWithFrame:CGRectMake(160,95,86,193)];
        slowAnimationImageView.animationImages = images;
        slowAnimationImageView.animationDuration = 5;
        [self.view addSubview:slowAnimationImageView];
        [slowAnimationImageView startAnimating];

}

4 个答案:

答案 0 :(得分:0)

将slowAnimationImageView声明为头文件中的retain属性,如下所示 -

@property(nonatomic,retain)  UIImageView *slowAnimationImageView;

答案 1 :(得分:0)

在.h文件中

@property(nonatomic,retain)  IBOutlet UIImageView * slowAnimationImageView;

在.m文件中

-(void)imageAnimation{
    self. slowAnimationImageView.animationImages = [NSArray arrayWithObjects:    
                                         [UIImage imageNamed:@"jake_2.png"],
                                         [UIImage imageNamed:@"jake_4.png"],
                                         [UIImage imageNamed:@"jake_5.png"]],
                                            nil];
    self. slowAnimationImageView.animationDuration = 5.0f;
    self. slowAnimationImageView.animationRepeatCount = 0;
    [self. slowAnimationImageView startAnimating];

}

答案 2 :(得分:0)

在模拟器中,名称是不区分大小写的。在设备中,名称区分大小写。代码中的所有内容都是完美的。只需检查验证图像的文件名。

确保代码和实际文件名完全相同。即捆绑到应用程序中的映像文件必须具有文件名为&#34; jake_2.png&#34;所以对于所有的图像文件。

答案 3 :(得分:0)

我已经通过运行您的代码检查了不同的图像名称,并且它在我的设备上没有崩溃。你应该尝试这些可能有助于解决问题的步骤

  1. 交叉检查您的图像名称并检查您是否已添加到捆绑包中。
  2. 只需清洁产品并尝试再次运行。
相关问题