我正在使用Picasso Library,我有(例如)五 ImageView
我需要用{{1}显示它们我知道我们可以这样做:
Picasso
但是,我们可以使用ImageView footer1 = (ImageView) findViewById(R.id.img_thumbnail1);
Picasso.with(MainActivity.this).load("http://url.com/1.jpg").into(footer);
ImageView footer2 = (ImageView) findViewById(R.id.img_thumbnail2);
Picasso.with(MainActivity.this).load("http://url.com/2.jpg").into(footer);
ImageView footer3 = (ImageView) findViewById(R.id.img_thumbnail3);
Picasso.with(MainActivity.this).load("http://url.com/3.jpg").into(footer);
ImageView footer4 = (ImageView) findViewById(R.id.img_thumbnail4);
Picasso.with(MainActivity.this).load("http://url.com/4.jpg").into(footer);
ImageView footer5 = (ImageView) findViewById(R.id.img_thumbnail5);
Picasso.with(MainActivity.this).load("http://url.com/5.jpg").into(footer);
加载这些多次加载吗?
或者最好的方法是什么?
答案 0 :(得分:1)
Picasso
是一个单例实例,这意味着每次加载图像时都不会创建新的Picasso
对象。此外,使用指定的任务调度程序将图像智能地加载到后台队列上,这样做上面所做的就完全没问题了。如果你需要剪切代码,请在循环中执行。
您当然可以使用AsyncTask
,但不会更快。相反,它会带来更多的代码复杂性和开销。
Picasso还会根据设备连接类型(3G,Wifi等)自动管理一次尝试下载的图像数量。