2015-09-03 7 views
5

Sto usando Picasso per prelevare immagini dal server e visualizzato in viewpager, ma sto ottenendo qualche strano tipo di errore, alcune delle mie immagini non vengono visualizzate, quando sto caricando l'immagine staticamente stanno mostrando, ma quando le immagini vengono caricate dal server di alcuni di loro che ottengono scomparsi, soprattutto dopo 3.Android: Picasso non sta caricando alcune immagini

Ecco il mio ViewPagerAdapter.java:

public Object instantiateItem(final ViewGroup container, int position) { 

    layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View itemView = layoutInflater.inflate(R.layout.viewpager_item, container, false); 
    /** 
    * Loading the image view 
    */ 
    // Locate the ImageView in viewpager_item.xml 
    ImageView sliderItem = (ImageView) itemView.findViewById(R.id.viewpagerImageView1); 

    // Capture position and set to the ImageView 
    /* if(requestCreatorListIterator.hasNext()) { 
     requestCreatorListIterator.next().into(sliderItem); 
    }*/ 
    slider[position].into(sliderItem); 
    //sliderItem.setImageResource(slider[position]); 

    // Add viewpager_item.xml to ViewPager 
    ((ViewPager) container).addView(itemView); 

    //http://stackoverflow.com/questions/21368693/how-to-do-circular-scrolling-on-viewpager 
    ((ViewPager) container).addOnPageChangeListener(new ViewPager.OnPageChangeListener() { 
     @Override 
     public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { 

     } 

     @Override 
     public void onPageSelected(int position) { 
      // skip fake page (first), go to last page 
      if (position == 0) { 
       ((ViewPager) container).setCurrentItem(slider.length - 2); 
      } 

      // skip fake page (last), go to first page 
      if (position == slider.length - 1) { 
       ((ViewPager) container).setCurrentItem(1); //notice how this jumps to position 1, and not position 0. Position 0 is the fake page! 
      } 
     } 

     @Override 
     public void onPageScrollStateChanged(int state) { 

     } 
    }); 

} 

risposta

0

ho finalmente trovato la soluzione, Picasso ha un problema che utilizza il caricamento lazy per il recupero delle immagini, dal momento che sto caricando immagini asincrone prima di essere visualizzato, non è in grado di caricare tutte le immagini.

Solution :: Utilizzando UIL (Universal Loader Immagine), risolto tutti i miei problemi

+0

Non capisco il tuo punto né la soluzione: S – russellhoff

+0

vedere tinyowl app in Google Play Store e vedere dispositivo di scorrimento immagine nella home page, lo capirai meglio – Ravi