Index d'exemples d'animations iOS prêts à exécuter
Index de la collection d'animations Swift issue de MotionBook : classé par catégorie, pointant vers des projets open-source clonables et exécutables. Il s'agit d'un « répertoire d'exemples prêts à exécuter » — une porte d'entrée vers du code fonctionnel, pas un tutoriel sur la façon d'écrire des animations. Pour les tutoriels, voir les tutoriels SwiftUI de twostraws, apple-skills:guide-swiftui-animations, swiftui-design-skill.
Les entrées proviennent de la collection open-source younatics/MotionBook, organisées selon les 8 catégories d'origine. Cet index en sélectionne les meilleures + les entrées complètes sont réparties dans des fichiers séparés. Les projets sont principalement des démos clonables et exécutables (majoritairement Swift, certains Objective-C) ; les descriptions sont en français, les liens et le code sont en anglais.
Cet index n'inclut pas : les animations SwiftUI natives .animation / withAnimation, les fichiers d'animation Lottie / Rive, ni les tutoriels Core Animation. Pour ces besoins, référez-vous à twostraws SwiftUI, apple-skills:core-animation, ou la documentation officielle correspondante.
Comment utiliser cet index
Ce fichier est la couche d'index de dispatch : les 8 catégories listent chacune 2-3 projets phares les plus classiques, en précisant « ce que c'est » et « quand lire quel fichier de référence ». Les autres entrées se trouvent dans references/ sous forme de fichiers séparés par catégorie, avec une seule profondeur de référence.
Workflow :
- Identifiez d'abord la catégorie appropriée ci-dessous (utilisez la section « Trouver une catégorie par tâche » pour une recherche rapide). Vérifiez si les exemples phares suffisent.
- Si ce n'est pas le cas ou si vous souhaitez comparer plus d'implémentations, ouvrez le fichier
references/<catégorie>.mdcorrespondant, qui contient la liste complète des entrées de cette catégorie. - Une fois le projet cible trouvé, clonez-le et exécutez-le pour observer son comportement réel, puis décidez si vous souhaitez l'intégrer dans votre propre code.
- Les entrées TableView et CollectionView étant moins nombreuses, elles sont fusionnées dans un même fichier
references/tableview-collectionview.md. Ouvrez-le et lisez les sections « Tableau / Vue en collection » selon votre besoin.
Ces projets sont principalement des bibliothèques open-source matures de l'ère UIKit, dont les schémas d'interaction et les courbes d'animation ont été validés par de nombreuses applications ; les implémentations SwiftUI peuvent s'inspirer de leurs paramètres de timing et de courbe.
Correspondance des fichiers de référence et des catégories : menu.md / animation.md / transition.md / tableview-collectionview.md (TableView + CollectionView fusionnées) / indicator.md / alert.md / ui-controls.md.
Trouver une catégorie par tâche
Si vous ne savez pas quel fichier de référence ouvrir, identifiez d'abord la catégorie par mot-clé de tâche :
- Menu latéral / bas / déroulant / TabBar animé → Menu
- Bibliothèque d'animations génériques, écran squelette, GIF, effets de texte / météo → Animation
- Transition de page, modal, carte extensible, pages de présentation → Transition
- Interaction cellule de liste, pull-to-refresh, dépliage en origami → TableView
- Glissement / empilement de cartes, défilement parallaxe Sticky / en-tête extensible, disposition en tableau → CollectionView
- Chargeur, points de pagination, barre de navigation, HUD → Indicator
- Bannière de notification, Alert personnalisé, notification en haut, popup en essaim / flou → Alert
- Contrôle segmenté, curseur, carte, mode nuit, recherche, Markdown → UI
Menu
Menus déroulants, glissants, radiaux, en guillotine, TabBar animée, etc. et animations d'interaction. À utiliser pour les barres de navigation / barres latérales / menus déroulants / animations de changement d'onglet en bas.
- SideMenu - Menu latéral coulissant style Facebook
- GuillotineMenu - Animation de transition de menu en guillotine
- circle-menu - Bouton circulaire se déployant en menu radial
Pour plus d'implémentations de menus déroulants, contrôleurs de menu coulissants, TabBar animée, etc., voir references/menu.md (7 entrées au total).
Animation
Bibliothèques d'animations génériques, écran squelette, SVG vectoriel, écran de démarrage, effets de texte / GIF / météo, etc. Consultez d'abord les exemples phares, puis ouvrez le fichier de référence pour des effets spécifiques (moteur GIF, texte scintillant, superposition météo).
- Spring - Bibliothèque générique simplifiant les animations iOS
- SkeletonView - Animation de placeholders d'écran squelette
- Macaw - Bibliothèque d'animations vectorielles prenant en charge SVG
Pastel, Stellar, RevealingSplashView, Gecco, GlitchLabel, ainsi que Highlighter, FLAnimatedImage, Ease, etc. (18 entrées au total) voir references/animation.md.
Transition
Transitions de contrôleurs, bulles modales, glissement élastique, transition de défilement, pages de présentation, etc. À utiliser pour les changements de page / cartes extensibles / compilations de transitions.
- Hero - Framework de transition de vue contrôleur
- BubbleTransition - Transition modale en bulle expansible
- Gemini - Framework de transition riche basé sur le défilement
ElasticTransition, AnimatedTransitionGallery, JTMaterialTransition, Pinterest, Walkthrough, etc. (14 entrées au total) voir references/transition.md.
Tableau / TableView
Cellules extensibles, pull-to-refresh, actions de glissement, dépliage en origami, prévisualisation extensible, etc. (instances UITableViewCell). À utiliser pour les interactions de liste / animations de rafraîchissement.
- SwipeCellKit - Cellules à actions de glissement style Mail.app
- folding-cell - Cellule se dépliant en origami
Les instances Tableau et Vue en collection sont fusionnées : YNExpandableCell, Pull-to-Refresh, elongation-preview, etc. (11 entrées) voir references/tableview-collectionview.md.
Vue en collection / CollectionView
Glissement / empilement de cartes, en-tête Sticky avec parallaxe, en-tête extensible élastique, feuille de calcul, etc. (instances de disposition UICollectionView).
- Koloda - Glissement de cartes style Tinder
- expanding-collection - Vue en collection où les cartes se développent en détails
Les instances de vue en collection sont fusionnées avec le tableau : MMCardView, CSStickyHeaderFlowLayout, GSKStretchyHeaderView, SwiftSpreadsheet, etc. (11 entrées) voir references/tableview-collectionview.md.
Indicateur / Indicator
Animations de chargement, indicateurs de pagination, barre de navigation, popup HUD, etc. (indicateurs d'état). À utiliser pour les chargeurs / points de pagination / indicateurs de progression.
- NVActivityIndicatorView - Collection massive d'animations de chargement
- PKHUD - Indicateur popup style Apple HUD
TKRubberIndicator, SpringIndicator, BusyNavigationBar, etc. (5 entrées au total) voir references/indicator.md.
Popup / Alert
Bannières de notification, Alert personnalisé, remplacement de popup, notification en haut, popup en essaim / flou, etc.
- NotificationBanner - Bannière de notification personnalisable dans l'application
- PopupDialog - Popup de remplacement pour UIAlertController
- SDCAlertView - Alert supportant du contenu personnalisé
CDAlertView, CRToast, TKSwarmAlert, MIBlurPopup, SweetAlert, etc. (9 entrées au total) voir references/alert.md.
Contrôles d'interface / UI
Animations conçues dans Interface Builder, transformation de texte, contrôle segmenté, cartes, curseur fluide, recherche, mode nuit, etc. (instances de contrôles génériques).
- IBAnimatable - Concevoir des animations et des transitions dans Interface Builder
- LTMorphingLabel - UILabel avec évolution morphing du texte
- fluid-slider - Curseur fluide avec valeur affichée dans une bulle
Segmentio, Cards, StarWars, YNSearch, DKNightVersion, MarkdownView, etc. (13 entrées) voir references/ui-controls.md.
MotionBook complet : https://github.com/younatics/MotionBook Les entrées suivent les mises à jour en amont ; en cas d'absence ou de lien brisé, signalez-le au dépôt MotionBook.