2015-04-02 57 views
0

我想找回畢加索圖片後並保存在緩存中,我用這個代碼:畢加索 - 如何在瞬間獲取圖像依次

 for(int i=0; i<urlList.size(); i++) { 
      Picasso.with(getActivity()) 
        .load(url.get(i)) 
        .fetch(); 
     } 

,但我想按順序進行檢索。什麼是最好的?

回答

0

您可以將圖像加載到Target,如果您有一個網址的數組,您可以從Target遞歸加載它們。

實施例的活動,這是否:

public class MainActivity extends ActionBarActivity{ 

    private ArrayList<String> urls; 

    @Override 
    protected void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     urls = new ArrayList<>(); 
     urls.add("http://placehold.it/300&text=0"); 
     urls.add("http://placehold.it/300&text=1"); 
     urls.add("http://placehold.it/300&text=2"); 
     urls.add("http://placehold.it/300&text=3"); 
     urls.add("http://placehold.it/300&text=4"); 

     loadImages(0); 
    } 

    private void loadImages(final int index){ 
     Target t = new Target(){ 
      @Override 
      public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from){ 
       Log.w("image", "image received" + index); 
       loadImages(index + 1); 
      } 

      @Override 
      public void onBitmapFailed(Drawable errorDrawable){ 
      } 

      @Override 
      public void onPrepareLoad(Drawable placeHolderDrawable){ 
      } 
     }; 

     if(index < urls.size()) 
      Picasso.with(this) 
        .load(urls.get(index)) 
        .into(t); 
    } 
}