2010-01-02 5 views
1

J'essaye de faire une animation simple sur l'iPhone et l'ai alors arrêtée une fois qu'il est fini. Le code J'utilise actuellement est:Animation simple de sprite sur l'iPhone

NSArray *imageArray = [[NSArray alloc] initWithObjects: 
          [UIImage imageNamed:@"init_lay1.png"], 
          [UIImage imageNamed:@"init_lay2.png"], 
          [UIImage imageNamed:@"init_lay3.png"], 
          [UIImage imageNamed:@"init_lay4.png"], 
          [UIImage imageNamed:@"init_lay5.png"], 
          [UIImage imageNamed:@"init_lay6.png"], 
          [UIImage imageNamed:@"init_lay7.png"],nil]; 

    imageViewArms.animationImages = imageArray; 
    imageViewArms.animationDuration = 0.23; 
    imageViewArms.contentMode = UIViewContentModeBottomLeft; 
    imageViewArms.animationRepeatCount = 0.0; 
    [imageViewArms startAnimating]; 

Je ne suis pas sûr de la façon de l'arrêter une fois qu'il est terminé. Des idées? Merci.

Répondre

2

- [UIImageView stopAnimation]?

+0

J'ai essayé cela, mais pour une raison quelconque, il ne montre même pas l'animation si j'appelle [UIImageView stopanimatin] ;. –

+0

assurez-vous de donner à l'animation assez de temps pour fonctionner; essayez d'utiliser -performSelector: withObject: afterDelay: pour l'arrêter. –

3

Pour arrêter l'animation une fois qu'il est terminé, vous devez utiliser:

imageViewArms.animationRepeatCount = 1; 

pas:

imageViewArms.animationRepeatCount = 0; 

Réglage de la animationRepeatCount-0 signifie que l'animation wil être mis en boucle. Le réglage à 1 signifie qu'il ne sera joué qu'une seule fois.