2010-07-16 6 views
2

Hey, en essayant de mettre une animation simple séquence png dans mon application. J'ai la première image en place dans IB, et la sortie de la carte de collection y est connectée. Il y a 54 pngs dans la séquence avec les noms "Comp 1_0000.png" à "Comp 1_00053.png"iphone imageview séquence animation

Voici mon code.

-(void)viewDidLoad{ 
for (int i=0; i<53; i++) { 
     graphanimation.animationImages = [NSArray arrayWithObjects: 
          [UIImage imageNamed:@"Comp 1_000%d.png",i]]; 
    } 
    graphanimation.animationDuration = 1.00; 
graphanimation.animationRepeatCount = 1; 
[graphanimation startAnimating]; 
[self.view addSubview:graphanimation]; 
    [super viewDidLoad];  
} 

Je pense que quelque chose ne va pas dans la façon dont je référence les noms de fichiers d'images avec l'entier i. Quelqu'un peut-il m'aider à trier ce sucker? Merci!

Répondre

4

Vous ne pouvez pas passer une liste d'arguments variable et mettre en forme des arguments dans [UIImage imageNamed:].

Essayez quelque chose comme ceci peut-être?

... 
NSMutableArray *array = [NSMutableArray arrayWithCapacity:54]; 
for (int i = 0; i < 54; ++i) { 
    NSString *name = [NSString stringWithFormat:@"Comp 1_000%d.png",i]; 
    UIImage *image = [UIImage imageNamed:name]; 
    [array addObject:image]; 
} 
graphAnimation.animationImages = array; 
... 
+1

Merci! J'ai juste découvert: L'animation se termine et revient à l'affichage de la première image. Pour obtenir l'affichage de la dernière image, il vous suffit de remplacer UIImageView par la dernière image d'image dans Interface Builder. – Hippocrates