web-dev-qa-db-fra.com

Glide ne résout pas sa méthode

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?

51
user3528954

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);
101
Pehlaj

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);
44
James Jordan Taylor

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 fichier GIF il va charger GIF File automatiquement

Voir la dernière version de glide, corrections de bugs, fonctionnalités

37
ND1010_

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);

Documentation

15
Airon Tark

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);
4
shellhub

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'
1
Darush