CKWaveCollectionViewTransition est un framwork iOS qui permet d'ajouter des animations de transition fluides de type vague entre différentes UICollectionView, améliorant ainsi l'attrait visuel des changements d'interface dans les applications.
Concept des animations de transition en vague
Ces animations simulent un effet d'ondulation où la vue cible se déploie progressivement à travers l'écran, offrant une expérience utilisateur immersive. Elles conviennent particulièrement aux scénarios comme les galeries d'images, les catalogues de produits ou les flux de contenu nécessitant des transitions fréquentes.

Principales caractéristiques techniques
- Animation réaliste : Exploite des algorithmes de simulation physique pour reproduire des trajectoires d'ondulation naturelles.
- Architecture légère : La logique principale est centralisée dans CKWaveCollectionViewAnimator.swift.
- Intégration simplifiée : API concise permettant d'implémenter des effets complexes avec peu de code.
- Personnalisation étendue : Paramètres ajustables tels que la vitesse, l'amplitude et la couleur de la vague.
- Démonstration complète : Inclut un projet exemple fonctionnel dans le répertoire Example/CKWaveCollectionViewTransition.
Procédure d'installation
Via CocoaPods
Incluez la dépendance dans votre Podfile :
pod 'CKWaveCollectionViewTransition'
Exécutez ensuite la commande :
pod install
Intégration manuelle
- Récupérez le code source :
git clone https://gitcode.com/gh_mirrors/ck/CKWaveCollectionViewTransition - Ajoutez les fichiers du dossier Classes à votre projet :
- CKWaveCollectionViewAnimator.swift
- L'ensemble des fichiers du dossier Extensions
Mise en œuvre pas à pas
1. Configuration du délégué
Dans votre contrôleur de collection, assignez le délégué de transition :
class ViewControllerPrincipal: UICollectionViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.delegate = self
}
}
2. Implémentation du protocole de délégué
Définissez une classe déléguée pour gérer les transitions :
class DelegateTransitionNav: NSObject, UINavigationControllerDelegate {
func navigationController(_ navigationController: UINavigationController,
animationControllerFor operation: UINavigationController.Operation,
from vueSource: UIViewController,
to vueCible: UIViewController) -> UIViewControllerAnimatedTransitioning? {
// Instanciation de l'animateur de transition
return CKWaveCollectionViewAnimator(operation: operation)
}
}
3. Ajustement des paramètres d'animation
Personnalisez l'effet selon vos besoins :
let animateurVague = CKWaveCollectionViewAnimator(operation: operation)
animateurVague.waveColor = .systemTeal // Modification de la couleur
animateurVague.duration = 0.6 // Ajustement de la durée
animateurVague.waveAmplitude = 25 // Changement de l'amplitude
Cas d'utilisation typiques
- Parcours d'albums photo dans des applications de visualisation
- Navigation par catégories dans les plateformes e-commerce
- Transitions entre listes d'articles dans les applications d'information
- Alternance de cartes de contenu dans les réseaux sociaux
- Amélioration ergonomique de toute interface basée sur UICollectionView
Options de configuration avancées
Le framework offre de nombreuses possibilités de personnalisation via les propriétés exposées dans CKWaveCollectionViewAnimator.swift. Ces options permettent d'adapter finement l'animation pour correspondre à l'identité visuelle spécifique de chaque application.