Les animations iOS SDK vous permettent d'agrémenter vos applications avec des effets visuels et des transitions attrayants. Avec le SDK iOS, les animations sont fréquemment utilisées pour repositionner des vues, redimensionner des vues, supprimer ou ajouter des vues à partir de hiérarchies de vues et masquer complètement les vues. Lisez la suite pour savoir comment ces effets sont obtenus!
Pour créer une animation avec le SDK iOS, vous n'avez pas à écrire de code de dessin personnalisé. Tout ce que vous avez à faire est de déclencher les animations avec quelques appels simples et le framework Core Animation fera le gros du travail. Avec ce framework, vous pouvez créer une animation en quelques lignes de code, ce qui est une bonne chose pour nous, développeurs paresseux.!
Dans UIKit, les animations sont réalisées à l'aide d'objets UIView. Vous pouvez animer les modifications apportées aux propriétés de la vue ou utiliser des animations de transition pour remplacer un ensemble de vues par un autre. Vous pouvez animer les propriétés UIView suivantes avec UIKit:
Si votre application fonctionne sous iOS 3.2 et versions antérieures, vous devez utiliser le beginAnimations: contexte:
et commitAnimations
méthodes de classe d’UIView pour définir vos blocs d’animation. C’est la méthode que je vais utiliser dans cette astuce car elle fonctionne sur toutes les versions d’iOS..
Pour commencer un bloc d'animation, vous utiliserez [UIView beginAnimations: (NSString *) contexte: (void *)];
. Après avoir écrit le code pour configurer votre animation (c'est-à-dire changer les propriétés de UIView), vous terminez le bloc d'animation avec [UIView commitAnimations];
.
Vous pouvez configurer un bloc d'animation avec les méthodes de classe UIView suivantes:
Avec les codes begin et commit ci-dessus, vous pouvez créer une animation. Pour voir cela en pratique, regardons un exemple:
[UIView beginAnimations: @ "Ma première animation" contexte: nil]; [UIView setAnimationDuration: 1.0]; [UIView setAnimationDelay: 2.0]; self.view.backgroundColor = [UIColor redColor]; [UIView commitAnimations];
Comme vous pouvez le constater, j’ai commencé le bloc d’animation avec [UIView beginAnimations: (NSString *) contexte: (void *)];
et l'a appelé "ma première animation". Après cela, je règle la durée sur 1 seconde et le délai sur 2 secondes. L'animation démarrera donc au bout de deux secondes et durera 1 seconde. Avec cette animation, j'anime la couleur d'arrière-plan de la vue en rouge. Si la couleur d'arrière-plan de la vue était déjà rouge, l'animation ne sera pas affichée, mais l'animation sera toujours active. Enfin je termine mon bloc d'animation avec [UIView commitAnimations];
.
Voici un exemple d'animation où nous faisons pivoter une vue:
[UIView beginAnimations: @ "Rotate" context: nil]; [UIView setAnimationDuration: 1.0]; [UIView setAnimationDelegate: self]; [UIView setAnimationDidStopSelector: @selector (rotationBack)]; theView.transform = CGAffineTransformMakeRotation (M_PI); [UIView commitAnimations];
La configuration de ce bloc d'animation ressemble à la précédente, mais cette fois-ci, j'ai utilisé le délégué d'animation et la propriété de transformation. Si vous voulez utiliser le s'est arrêté sélecteur méthode, vous devrez définir le délégué sur soi. Donc, si cette animation est faite la méthode faire pivoter sera appelé. Avec la propriété de transformation, vous pouvez redimensionner, faire pivoter ou traduire une vue. La transformation sera toujours en 2D. Pour l'angle de rotation, j'ai utilisé M_PI comme vous pouvez le voir. Par défaut, Objective-C fonctionne avec des radians au lieu de degrés. 360 degrés équivaut à 2 ?, la vue pivotera à 180 degrés.
- (void) rotationBack [UIView beginAnimations: @ "Rotate back" context: nil]; [UIView setAnimationDuration: 1.0]; theView.transform = CGAffineTransformIdentity; [UIView commitAnimations];
C'est la méthode qui sera appelée lors de la rotation de l'animation. Dans ce bloc d'animation, nous retournons la vue à son emplacement d'origine. Nous faisons cela avec le CGAffineTransformIdentity
une fonction. Cela annulera la transformation de rotation.
Envie d'en savoir plus? Vous pouvez voir quelques exemples d'animation supplémentaires dans le code source joint.
J'espère que vous avez aimé cette astuce rapide du SDK iOS sur les animations! S'il vous plaît laissez-moi savoir vos commentaires en laissant un commentaire ci-dessous. Vous pouvez également suggérer des idées de didacticiels supplémentaires à couvrir ultérieurement.!