57 votes

Glide ne résout pas sa méthode

Aujourd'hui, j'essaie d'utiliser Glide chargeur d'images dans mon application Android tout en l'utilisant. La méthode de résolution de problèmes que je rencontrais n'était pas résolue.

 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 ce dicton ne peut pas résoudre la méthode fitCenter() , placeholder . Qu'est-ce qui me manque?

112voto

Pehlaj Points 5892

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

38voto

ND1010_ Points 2041

Si vous utilisez Glide paquet de dépendances compile 'com.github.bumptech.glide:glide:3.7.0' que d'utiliser 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 la doc Tour Photos: CircleImageView/CircularImageView/RoundedImageView sont connu pour avoir des problèmes avec TransitionDrawable (.fondu enchaîné() avec .vignette() ou .espace réservé()) et GIFs animés, utiliser un BitmapTransformation (.circleCrop() sera disponible en v4) ou .dontAnimate() pour résoudre le problème.

Dernière mise à jour de la version compile 'com.github.bumptech.glide:glide:4.1.1' ou au-dessus de l'utilisation de code ci-dessous

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 avec l'aide d' compile 'com.github.bumptech.glide:glide:3.7.0' que d'utiliser .asGif() méthode après l' .load()

Glide
    .with(your_context)
    .load(image_url)
    .asGif()
    .into(imageView);

Si vous utilisez compile 'com.github.bumptech.glide:glide:4.1.1' ou plus(plus tard) les dépendances que,

Glide
    .with(your_context)
    .asGif()
    .load(image_url)
    .into(imageView);

Remarque: Si vous utilisez glide:glide:4.1.1 d'une version supérieure ou pas nécessaire d'utiliser .asGif() méthode pour charger GIF le fichier, il sera charge GIF File automatiquement

Voir la Dernière version de glisse, de corrections de bugs, des Fonctionnalités

16voto

Pavel Ismailov Points 49

Pour utiliser fitCenter() et d'autres changements 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

4voto

shellhub Points 516

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X