2009-10-28 8 views
3

J'ai quelques UIButtons que je voudrais déclencher de courtes animations de 5-10 images quand on les appuie au milieu de l'écran avec d'autres objets non apparentés. Puis-je simplement supprimer un UIImageView dans IB et le mettre à jour, d'une manière ou d'une autre, par programmation? Ça n'a pas besoin d'être trop complexe, ça ne me dérange même pas si c'est codé en dur, pour l'instant puisque c'est un si petit projet.Simple Animations [iPhone]

Merci.

Répondre

3

Voici un exemple de la manière la plus simple que vous faites une animation avec seulement quelques images est:

Déclarez une IBOutlet UIImageView *timerAnimation et lien à votre UIImageView dans IB. Ajouter un certain nombre d'images à vos ressources, comme vous le voyez nécessaire ci-dessous. Chargez ensuite les images dans un tableau - voir le code:

timerAnimation.animationImages = [NSArray arrayWithObjects: 
     [UIImage imageNamed:@"timer00.png"], 
     [UIImage imageNamed:@"timer01.png"], 
     [UIImage imageNamed:@"timer02.png"], 
     [UIImage imageNamed:@"timer03.png"], 
     [UIImage imageNamed:@"timer04.png"], 
     [UIImage imageNamed:@"timer05.png"], 
     [UIImage imageNamed:@"timer06.png"], 
     [UIImage imageNamed:@"timer07.png"], 
     [UIImage imageNamed:@"timer08.png"], 
     [UIImage imageNamed:@"timer09.png"], 
     [UIImage imageNamed:@"timer10.png"], 
     [UIImage imageNamed:@"timer11.png"], 
     [UIImage imageNamed:@"timer12.png"], 
     [UIImage imageNamed:@"timer13.png"], 
     [UIImage imageNamed:@"timer14.png"], 
     [UIImage imageNamed:@"timer15.png"], 
     [UIImage imageNamed:@"timer16.png"], 
     [UIImage imageNamed:@"timer17.png"], 
     [UIImage imageNamed:@"timer18.png"], 
     [UIImage imageNamed:@"timer19.png"], 
     [UIImage imageNamed:@"timer20.png"], 
     [UIImage imageNamed:@"timer21.png"], 
     [UIImage imageNamed:@"timer22.png"], 
     [UIImage imageNamed:@"timer23.png"], 
     [UIImage imageNamed:@"timer24.png"], 
     [UIImage imageNamed:@"timer25.png"], 
     [UIImage imageNamed:@"timer26.png"], 
     [UIImage imageNamed:@"timer27.png"], 
     [UIImage imageNamed:@"timer28.png"], 
     [UIImage imageNamed:@"timer29.png"], 
     [UIImage imageNamed:@"timer30.png"], 
     [UIImage imageNamed:@"timer31.png"], 
     [UIImage imageNamed:@"timer32.png"], 
     [UIImage imageNamed:@"timer33.png"], 
     [UIImage imageNamed:@"timer34.png"], 
     [UIImage imageNamed:@"timer35.png"], 
    //  [UIImage imageNamed:@"timer36.png"], save last picture for "times up" 
     nil]; 
timerAnimation.animationDuration = 5.0; 
timerAnimation.animationRepeatCount = 1; 
[timerAnimation startAnimating]; 

Cela exécutera votre animation jusqu'à ce que vous appelez [timerAnimation stopAnimating];

+0

Oui oui oui oui! C'était absolument juste ce dont j'avais besoin. Pas trop complexe, et juste assez simple pour être facile à mettre en œuvre. – nullArray

0

Oui. Créer un IBOutlet à votre UIImageView et vous pouvez le mettre à jour à partir du code. Par exemple, utilisez sa propriété image pour définir l'UIImage à afficher. Vous pouvez également ajouter l'image aux ressources de votre application et l'associer à UIImageView dans Interface Builder. Utilisez les fichiers .png car l'iPhone a été optimisé pour eux.
Puisqu'un UIImageView est un UIView, toutes les animations de base habituelles methods peuvent être utilisées.