Android网络加载框架:Picasso简介

时间:2022-05-24 19:51:09

一直没有使用过Picasso这个图片加载框架,今天用了下,非常好用,简单写个笔记!
* Android网络加载框架:Picasso,开源地址:http://square.github.io/picasso/
* 该框架是由Square公司为Android开发提供的一套图形缓存框架,实现图片的下载及缓存功能
* 优点:
* 可以加载本地及网络图片
* 方便实现图片变换操作,如大小改变,旋转等
* 在ListView等需要Adapter列表中使用时,可以在Adapter中取消及回收当前的下载操作

public class MainActivity extends Activity {
//ImageView控件
private ImageView loader_iv;
//图片地址(百度上随便找的一张)
private String url="http://www.3lian.com/gif/DetailView.htm?Detail=http://img4.3lian.com/img2005/08/32/200902271952518342.png";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
loader_iv=(ImageView) findViewById(R.id.loader_iv);
loadHttpImage();
otherMethod();
}
//通过Picasso框架添加网络图片到ImageView中,一般只用一行代码可以写好
private void loadHttpImage(){
Picasso.with(this).load(url).into(loader_iv);//这样就把url上的图片加载到loader_iv这个ImageView上了
}
//其它几个常用方法
private void otherMethod() {
//1,图片转换,转换图片大小 以减少内存占用
Picasso.with(this).load(url).resize(60, 60).centerCrop().into(loader_iv);//其中60就是图片的大小
//2,设置图片加载错误时的图片显示
Picasso.with(this).load(url).error(R.drawable.ic_launcher).into(loader_iv);
//3,设置图片加载过种中图片显示
Picasso.with(this).load(url).placeholder(R.drawable.ic_launcher).into(loader_iv);
//3,加载本地文件图片,比如asserts文件下图片
Picasso.with(this).load("file:///android_asset/test.png").into(loader_iv);
}

}

使用前记得添加picasso的相关jar包及网络权限。