2016-09-02 6 views
0

Glide RequestListener не работает. (Я использую его в файле recycler view, чтобы сохранить изображение после его загрузки). Вот соответствующий код.Glide RequestListener не работает

public class GlideImageView extends ImageView { 
public void setImageURI(String uri) { 
     setImageUri(uri); 
    } 

    private <T> void setImageUri(T uri) { 
     Context context = getContext(); 

     if (uri != null) { 
      DrawableTypeRequest<T> request = Glide.with(context) 
        .load(uri); 

       request.asBitmap() 
         .diskCacheStrategy(DiskCacheStrategy.ALL) 
       .listener(new RequestListener<T, Bitmap>() { 
        @Override 
        public boolean onException(Exception e, T model, Target<Bitmap> target, boolean isFirstResource) { 
         Log.e("Exception !!!" , e.getMessage()); 
         return false; 
        } 

        @Override 
        public boolean onResourceReady(Bitmap resource, T model, Target<Bitmap> target, boolean isFromMemoryCache, boolean isFirstResource) { 
         Log.e("I am working" , "regards request listener"); 
         return false; 
        } 
       }); 

      if (placeHolderDrawable != null) { 
       request.placeholder(placeHolderDrawable); 
      } 

      request.into(this); 
     } else { 
      Glide.clear(this); 
      setImageDrawable(placeHolderDrawable); 
     } 
    } 
} 

я узнал, что в классе GenericRequest requestListener равна нулю в методе onResourceReady(Resource<?> resource, R result).

Слушатель вообще не называется.

ответ

0

Убедитесь, что uri is correct. Вы можете проверить, если файл существует, как этот

File fileCheck = new File(uri); 
if(fileCheck.exist()){ 
//Your File is present at the uri 
} 

Если и до сих пор этот вопрос может быть это issue

Так попробуйте добавить .override (ш, ч) к вашему скольжению

Смежные вопросы