2017-08-29 3 views
0

Ich habe eine Anwendung enthält eine Reihe von Bild erscheint durch Links mit glide Bibliothek, dauert meine App eine lange Zeit, um alle Bilder zu laden, so ist es möglich, Bild für Bild (eins nach dem anderen) zu laden.Wie wird Bild für Bild mit Glide Library geladen?

Glide.with(context) 
    .load(imageId.get(position)) 
    .diskCacheStrategy(DiskCacheStrategy.ALL) 
    .priority(Priority.HIGH) 
    .listener(new RequestListener<String, GlideDrawable>() { 
     @Override 
     public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) { 
      return false; 
     } 
     @Override 
     public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { 
      progressBar.setVisibility(View.GONE); 
      return false; 
     } 
    }) 
    .into(holder.CategoryImage); 
+1

wo Sie diesen Code gelegt hat? ist es in der Adapter-Ansicht? –

+0

@Programmieren Pirat Ja in 'getview()' – MrMR

+1

Was ist die Größe Ihrer Bilder? Sind sie große Bilder oder nur Thumbnails –

Antwort

2

Versuchen Sie, diese

Glide.with(context) 
     .load(imageId.get(position)) 
     .diskCacheStrategy(DiskCacheStrategy.ALL) 
     .priority(Priority.HIGH) 
     .listener(new RequestListener<String, GlideDrawable>() { 
      @Override 
      public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) { 
        return false; 
      } 
      @Override 
      public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { 
       progressBar.setVisibility(View.GONE); 
       return false; 
      } 
     }) 
     .thumbnail(0.1f) // this will do the trick 
     .into(holder.CategoryImage); 

wenn es nicht funktioniert, auf diese Weise versuchen,

Glide.with(context) 
     .load(imageId.get(position)) 
     .diskCacheStrategy(DiskCacheStrategy.ALL) 
     .priority(Priority.HIGH) 
     .override(100,100) 
     .listener(new RequestListener<String, GlideDrawable>() { 
      @Override 
      public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) { 
        return false; 
      } 
      @Override 
      public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { 
       progressBar.setVisibility(View.GONE); 
       Glide.with(context).load(imageId.get(position)) 
        .diskCacheStrategy(DiskCacheStrategy.ALL) 
        .priority(Priority.HIGH) 
        .into(holder.CategoryImage); 
       return false; 
      } 
     }) 
     .into(holder.CategoryImage);