2016-07-15 1 views
0

J'ai un Gridview personnalisé. Dans mon téléchargement d'image asynchrone de l'adaptateur fait en utilisant AQuery. les images sont téléchargées correctement, mais dans certains cas, une erreur se produira, de sorte que l'arrière-plan de l'image timeView deviendra totalement blanc.je veux définir cette image d'erreur.android comment régler l'image d'erreur en utilisant la bibliothèque Aquery

Maintenant, voici le code de mon adaptateur GRIDVIEW():

try{ 
      String[] tmp_arr_thumb_img = prodItems.get(holder.position).getprod_image().split(global.split_seprator); 
      //String imageID = tmp_arr_thumb_img[0]; 
      String thumbImg = tmp_arr_thumb_img[1]; 

      if (aQuery.shouldDelay(holder.position, convertView, parent, global.GLOBAL_UPLOADED_PHOTOS_URL + thumbImg)){ 
       aQuery.id(holder.imageView).image(R.drawable.no_image); 
      }else{ 
       aQuery.id(holder.imageView) 
         .image(global.GLOBAL_UPLOADED_PHOTOS_URL + thumbImg,true,true,200,0, new BitmapAjaxCallback(){ 
          @Override 
          protected void callback(String url, ImageView iv, Bitmap bm, AjaxStatus status) { 

           iv.setImageBitmap(bm); 
          } 
         }.animation(AQuery.FADE_IN)); 
      } 
     }catch (OutOfMemoryError err){ 
      err.printStackTrace(); 
     } 

Répondre

0

S'il vous plaît mettre à jour votre code avec ce wil utiliser un porte-lieu imaage

aQuery.id(holder.imageView) 
        .image(global.GLOBAL_UPLOADED_PHOTOS_URL + thumbImg,true,true,200,R.drawable.placeholder, new BitmapAjaxCallback(){ 
         @Override 
         protected void callback(String url, ImageView iv, Bitmap bm, AjaxStatus status) { 

          iv.setImageBitmap(bm); 
         } 
        }.animation(AQuery.FADE_IN)); 
+0

ce type de constructeur d'image non disponible il me donne une erreur sur cette ligne. –

+0

et si j'ajoute bitmap en tant que second dernier paramètre, alors u ne méthode de rappel. –

0

Si nous ne sommes pas en mesure de charger l'image, utilisez une image par défaut (R.drawable.default_image)

String imageUrl = "http://www.vikispot.com/z/images/vikispot/android-w.png"; 
aq.id(R.id.image1).image(imageUrl, true, true, 0, R.drawable.default_image); 

Afficher l'image "invisible" si l'image n'a pas réussi à charger

imageUrl = "http://a.b.com/invalid.jpg"; 
aq.id(R.id.image1).image(imageUrl, true, true, 0, AQuery.INVISIBLE); 

Marque vue de l'image « disparu » si l'image n'a pas pu charger

aq.id(R.id.image1).image(imageUrl, true, true, 0, AQuery.GONE); 
+0

mais comment détecter l'échec de chargement d'image ?? –