Aujourd'hui, j'essaie d'utiliser Glide
image loader dans mon application Android lors de l'utilisation de cette méthode, mais je n'avais pas résolu le problème.
Glide
.with(this)
.load(R.drawable.image_default_profile_picture)
.into(mUserImage);
Ce code fonctionne plutôt bien. Mais quand j'essaye ça
Glide
.with(this)
.load(R.drawable.image_default_profile_picture)
.placeholder(R.mipmap.ic_launcher)
.fitCenter()
.into(mUserImage);
Alors cette énonciation ne peut résoudre la méthode fitCenter()
, placeholder
. Qu'est-ce qui me manque?
On dirait que la bibliothèque mise à jour a un problème. Ajoutez .apply(new RequestOptions()
pour continuer avec la dernière version.
CODE
Glide
.with(this)
.load(R.drawable.image_default_profile_picture)
.apply(new RequestOptions()
.placeholder(R.mipmap.ic_launcher)
.fitCenter())
.into(mUserImage);
Vous pouvez toujours utiliser .placeholder()
avec la dernière version de Glide, il vous suffit de l'ajouter en tant qu'application RequestOption
dans la chaîne de méthodes, c'est-à-dire.
Glide.with(this)
.load(floorplanUrl)
.apply(new RequestOptions()
.placeholder(R.drawable.floorplan_unavailable))
.into(floorplanImageView);
Si vous utilisez les dépendances du paquet Glide, compile 'com.github.bumptech.glide:glide:3.7.0'
, utilisez le code ci-dessous.
Glide
.with(your_context)
.load(image_url)
.centerCrop()
.placeholder(R.drawable.image_loading)
.error(R.drawable.image_error)
.into(imageView);
Remarque: Comme dans doc Images rondes : CircleImageView/CircularImageView/RoundedImageView sont connus pour avoir des problèmes avec TransitionDrawable (.crossFade () avec .thumbnail () ou .placeholder ()) et les fichiers GIF animés, utilisez un BitmapTransformation (.circleCrop () sera disponible dans v4) ou .dontAnimate () pour résoudre le problème.
Dernière version de mise à jour compile 'com.github.bumptech.glide:glide:4.1.1'
ou supérieure à l'utilisation ci-dessous le code
Glide.with(your_context)
.load(url)
.apply(new RequestOptions()
.placeholder(R.mipmap.ic_loading_image)
.centerCrop()
.dontAnimate()
.dontTransform())
.into(imageView);
Si vous voulez charger GIF File
dans Glide
en utilisant compile 'com.github.bumptech.glide:glide:3.7.0'
que use .asGif()
méthode après .load()
Glide
.with(your_context)
.load(image_url)
.asGif()
.into(imageView);
Si vous utilisez compile 'com.github.bumptech.glide:glide:4.1.1'
ou des dépendances plus récentes que,
Glide
.with(your_context)
.asGif()
.load(image_url)
.into(imageView);
Remarque: Si vous utilisez
glide:glide:4.1.1
ou une version ultérieure, il n'est pas nécessaire de l'utiliser . AsGif () méthode pour charger le fichierGIF
il va chargerGIF File
automatiquementVoir la dernière version de glide, corrections de bugs, fonctionnalités
Pour utiliser fitCenter()
et d'autres modifications de type d'échelle avec la version Glide à partir de la v4.0, vous devez inclure une classe spéciale dans votre application.
import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;
@GlideModule
public class MyAppGlideModule extends AppGlideModule {
}
Après cela, reconstruisez le projet et vous pourrez commencer à utiliser Glide de cette manière.
GlideApp.with(imageView)
.load("...")
.fitCenter()
.into(imageView);
Version Glide: 4.8.0
Glide.with(this)
.load("https://media.giphy.com/media/98uBZTzlXMhkk/giphy.gif")
.apply(new RequestOptions()
.placeholder(R.drawable.placeholder)
.error(R.drawable.error)
.centerCrop()
.fitCenter())
.into(imageView);
Si vous voulez toujours utiliser la dernière bibliothèque 'com.github.bumptech.glide:glide:4.0.0-RC1'
, La page officielle de Github suggère ce qui suit:
Images rondes: CircleImageView/CircularImageView/RoundedImageView sont connus pour avoir des problèmes avec TransitionDrawable (. CrossFade () avec .thumbnail () ou .placeholder ()) et des GIF animés, utilisez une BitmapTransformation (. circleCrop () sera disponible dans la v4) ou . dontAnimate () corrigera le problème.
Sinon, utilisez la version de bibliothèque suivante:
compile 'com.github.bumptech.glide:glide:3.7.0'