REMARQUE: Ce référentiel est encore à un stade précoce de développement. Les contributions sont les bienvenues !
Un sélecteur d’images basé sur l’interface utilisateur du sélecteur Instagram. Il utilise le puissant flutter_wechat_assets_picker
package pour gérer le sélecteur et une version personnalisée de image_crop pour récolte.
🚀 Caractéristiques
- ✅ Mise en page Instagram
- Comportements de défilement, animation
- Prévisualiser, sélectionner, désélectionner la logique d’action
- ✅ Personnalisation du thème et de la langue
- ✅ Sélection d’images multiples (avec limite maximale)
- ✅ Restaurer l’état du sélecteur après pop
- ✅ Modifier le format d’image de 1:1 à 4:5
- ✅ Recadrez toutes les images en même temps et recevez un flux avec une valeur de progression
- ❌ Les vidéos ne sont pas prises en charge
📸 Captures d’écran
Mise en page et défilement | Culture |
---|---|
![]() |
![]() |
📖 Mise en place
Étant donné que ce package est un délégué personnalisé de flutter_wechat_assets_picker vous devez suivre cette recommandation de configuration du package : guide d’installation.
👀 Utilisation
Pour plus de détails consultez le Exemple.
Future<void> callPicker() => InstaAssetPicker.pickAssets(
context,
title: 'Select images',
maxAssets: 10,
onCompleted: (Stream<InstaAssetsExportDetails> stream) {
// TODO : handle crop stream result
// i.e : display it using a StreamBuilder
// - in the same page (closeOnComplete=true)
// - send it to another page (closeOnComplete=false)
// or use `stream.listen` to handle the data manually in your state manager
// - ...
},
);
Champs dans InstaAssetsExportDetails
:
Nom | Taper | Description |
---|---|---|
fichiers rognés | List<File> |
Liste de tous les fichiers recadrés |
actifs sélectionnés | List<AssetEntity> |
Actifs sélectionnés sans recadrage |
ratio d’aspect | double |
Format d’image sélectionné (1 ou 4/5) |
le progrès | double |
Indicateur de progression de l’exportation (entre 0 et 1) |
Concernant la configuration du picker : AssetPickerConfig
Concernant textDelegate
: Localisations
✨ Crédit
Ce forfait est basé sur flutter_wechat_assets_picker par AlexV525 et image_crop par Lykhonis.
GitHub
Voir Github