Alors, quelqu'un sait comment afficher une image avec des coins arrondis avec Glide? Je charge une image avec Glide, mais je ne sais pas comment passer des paramètres arrondis à cette bibliothèque.
J'ai besoin d'une image d'affichage comme dans l'exemple suivant:
android
android-glide
mr.boyfox
la source
la source
Réponses:
Glide V4:
Glide V3:
Vous pouvez utiliser
RoundedBitmapDrawable
pour des images circulaires avec Glide. Aucune ImageView personnalisée n'est requise.la source
.centerCrop()
vous dire probablement.circleCrop()
Vérifiez ce post, glide vs picasso ...
Edit : le post lié n'appelle pas une différence importante dans les bibliothèques. Glide effectue le recyclage automatiquement. Voir le commentaire de TWiStErRob pour plus.
la source
public String getId()
la façon dont il est affiché dans le code car il renvoie le même identifiant pour toutes les images et il pourrait donc arriver que glide définisse de vieilles images arrondies tandis que sans transformations, il définira l'image correcte! Je ne sais pas comment fonctionne le glissement, mais il semble qu'il cache les transformations d'images (pour éviter les calculs durs, je suppose). Et l'identifiant est utilisé comme l'identifiant de l'image transformée. J'ai ajouté une URL d'image au constructeur et fait la méthode mentionnée renvoyant l'ID résultant comme:this.id = String.format("%s:%s",this.getClass().getSimpleName(),id);
La manière la plus simple (nécessite Glide 4.xx)
la source
.apply()
va après.load()
.Essayez de cette façon
code
XML
all_circle_white_bg.xml
la source
sa très simple j'ai vu la bibliothèque Glide sa très bonne bibliothèque et base d'essais sur la bibliothèque de Google de volley
utiliser cette bibliothèque pour une vue d'image arrondie
https://github.com/hdodenhof/CircleImageView
maintenant
// Pour une vue simple:
// Pour une liste:
et en XML
la source
Les autres solutions n'ont pas fonctionné pour moi. J'ai trouvé qu'ils avaient tous des inconvénients importants:
Il est vraiment intéressant de constater qu'après avoir tâtonné avec cela, j'ai trouvé la page de la bibliothèque Fresco sur les coins et les cercles arrondis dans laquelle ils énumèrent essentiellement les mêmes limitations et concluent par la déclaration:
C'est incroyable qu'en ce moment nous n'avons toujours pas de vraie solution. J'ai une solution alternative basée sur le lien que j'ai mis ci-dessus. L'inconvénient de cette approche est qu'elle suppose que votre arrière-plan est de couleur unie (les coins ne sont pas vraiment transparents). Vous l'utiliseriez comme ceci:
L'essentiel est ici et le code complet ici:
la source
Maintenant, dans Glide V4, vous pouvez directement utiliser CircleCrop ()
Types intégrés
la source
Utilisez cette transformation, cela fonctionnera bien.
la source
Pour Glide 4.xx
utilisation
du doc, il a déclaré que
la source
Selon cette réponse, le moyen le plus simple dans les deux langues est:
Kotlin:
Java:
Cela fonctionne sur Glide 4.XX
la source
La réponse de Roman Samoylenko était correcte, sauf que la fonction a changé. La bonne réponse est
la source
J'ai trouvé une solution facile et simple pour ajouter une bordure sur la vue d'image dans laquelle la couleur souhaite définir ou ajouter un dégradé sur l'image.
PAS:
imgPlaceHolder
, vous avez besoin d'une image ou d'une couleur blanche que vous souhaitez définir.Après avoir placé ce code sur un fichier xml, mettez la ligne ci-dessous dans le fichier java.
Cela rendra la bordure de la vue d'image sans aucun rembourrage ni marge supplémentaire.
REMARQUE : l'image blanche est obligatoire pour la bordure, sinon elle ne fonctionnera pas.
Codage heureux :)
la source
Avec la bibliothèque glide, vous pouvez utiliser ce code:
la source
Je le cherchais plus tôt et je l'ai fait de la manière la plus simple, j'espère que cela vous plaira.
CircleTransform.java
fade_in.xml pour un fondu en animation.
enfin pour appeler cette méthode.
la source
Vous pouvez simplement appeler le constructeur RoundedCornersTransformation, qui possède une entrée d'énumération cornerType. Comme ça:
mais vous devez d'abord ajouter Glide Transformations à votre projet.
la source
Voici une façon plus modulaire et plus propre de découper en cercle votre bitmap dans Glide:
BitmapTransformation
puis en remplaçant latransform
méthode comme ceci:Pour Glide 4.xx
Pour Glide 3.xx
J'espère que cela t'aides :)
la source
la source
la source
Circle crop + placeholder + crossfade
la source
Glide version 4.6.1
la source
Dans ce cas, j'ai besoin d'ajouter des ombres et l'altitude imageView ne fonctionne pas
implémentation "com.github.bumptech.glide: glide: 4.10.0"
XML
Forme dessinable
Configuration Glide
la source
Vous devez utiliser CircularImageView pour afficher ce type d'image ...
Vous utilisez la bibliothèque Glide qui chargeait des images.
Créez un fichier de classe dans votre projet et chargez-le dans Imageview ... et vous obtiendrez le résultat souhaité ...
Essayez de suivre le code ...
XML
CircularImageView.java
Remarque :
Vous pouvez utiliser
ou
cela n'affectera pas vos autres bibliothèques ... ne pas avoir à changer votre code pour télécharger l'image ou autre chose ... il peut simplement être défini en utilisant XML aussi ..
la source