ImageViewer : Composant avancé de visualisation d'images pour applications iOS
ImageViewer est un composant de visualisation d'images conçu pour les applications iOS, inspiré des interactions fluides de Twitter. Il offre une transition sans faille entre les vignettes et l'affichage plein écran, intégrant des fonctionnalités avancées telles que le zoom par gestes et la fermeture par glissement vertical pour une expérience utilisateur optimale.
Fonctionnalités principales
Ce composant se distingue par une architecture moderne et des capacités d'interaction intuitives :
Animations de transition fluides
Les transitions entre une miniature et la vue complète sont animées de manière élégante, améliorant la perception visuelle et la hiérarchie de l'interface.
Mode galerie multi-images
Le défilement horizontal permet de parcourir une collection d'images avec des effets de transition continus, offrant une immersion totale.
Gestes intuitifs
- Zoom à deux doigts : agrandissement précis des détails de l'image.
- Double-tap pour zoom : changement rapide du niveau de zoom.
- Glissement vertical : sortie de la vue plein écran par un mouvement vers le bas.
- Glissement horizontal : navigation fluide dans le mode galerie.
Intégration rapide
Installation via CocoaPods
Ajoutez la dépendance suivante à votre fichier Podfile :
pod 'ImageViewer'
Exécutez ensuite pod install pour finaliser l'installation.
Exemple d'utilisation de base
// Afficher une galerie d'images
self.afficherGalerieImages(GalerieViewController(indexInitial: 0, sourceDeDonnees: self))
// Implémenter le protocole source de données
extension ControleurVue: SourceDonneesGalerie {
func nombreElements() -> Int {
return elements.count
}
func fournirElementGalerie(_ index: Int) -> ElementGalerie {
return elements[index].elementGalerie
}
}
D'autres exemples complets sont disponibles dans le répertoire Example du projet.
Caractéristiques techniques et compatibilité
Développé en Swift 5, ImageViewer prend en charge iOS 8.0 et supérieur. Son API modulaire permet une personnailsation avancée :
- Architecture modulaire : le noyau se trouve dans ImageViewer/Source/.
- Extensions : des utilitaires pour UIKit sont inclus dans ImageViewer/Source/Extensions/.
- Configuraton personnalisable : la classe
ConfigurationGaleriepermet d'ajuster les interactions et les effets visuels.
Licence
ImageViewer est distribué sous la licence MIT. Pour plus de détails, consultez le fichier LICENSE à la racine du projet.