先用用
//原图
Picasso.with(this).load(imgWebSite).into(imageView);
//其根据resize的比例关系来改变原图,虽然原图完整的在resize的范围中显示了,但图形已经失真了
Picasso.with(this).load(imgWebSite).resize(200, 200).networkPolicy(NetworkPolicy.OFFLINE).error(R.drawable.ic_launcher).into(imageView2);
//centerCrop 它保证将resize的范围给填充满,是按照原图的比率来压缩的,超出的部分则裁剪掉,裁剪是中心对其只裁剪边缘部分,
Picasso.with(this).load(imgWebSite).resize(200, 200).centerCrop().into(imageView4);
//centerInside 的意义在于 它不对图片进行裁剪,而是在原图的尺寸比例之下压缩图片,使得在resize要求的尺寸范围下能够完整的显示图片。那么实际下显示的图片会等于或小于resize的尺寸。
Picasso.with(this).load(imgWebSite).resize(200, 200).centerInside().into(imageView5);
/**
* placeholder 就是正在下载图片的过程中显示的内容。
*/
Picasso.with(this).load(errImgWebSite).placeholder(R.drawable.idx_logo).error(R.drawable.ic_launcher).into(imageView3);
/**
* 策略:
* NO_STORE 不将结果存入Cache中,也意味着每次都需要重新从网络上获取。
* NO_CACHE 强制从网络上获取,不去检查缓存里有没有。
* OFFLINE 只从cache中去找,即使网络ok,也不从网络上获取。
*/
Picasso.with(this).load(imgWebSite2).resize(200, 200).centerCrop().networkPolicy(NetworkPolicy.OFFLINE).error(R.drawable.ic_launcher).into(imageView6);
一些问题
源码解析
先占个坑