1.网络加载异步加载
Picasso.with(this).load("http://i.imgur.com/DvpvklR.png").into(image);
2.图片存放在固定sdcard位置(下载本地并加载)
Picasso picasso = new Picasso.Builder(this).downloader(
new OkHttpDownloader(new File(path))).build();
Picasso.setSingletonInstance(picasso);
3.直接加载已经下载在本地
Picasso.with(this).load(new File(photoPath)).into(view);
//view 必须是imageview、自设置宽高
4.图片转换:转换图片以适应布局大小并减少内存占用
Picasso.with(context)
.load(url)
.resize(50,50)
.centerCrop()//imageview的屏幕比例
.into(imageView);
5.查看大图
Picasso.with(getApplication())
.load(mURL)
.memoryPolicy(NO_CACHE, NO_STORE)//其中memoryPolicy的NO_CACHE是指图片加载时放弃在内存缓存中查找,NO_STORE是指图片加载完不缓存在内存中。
.into(imageView);
6.自定义imageview 实现内存加速优化
重写ImageView的onDetachedFromWindow方法,去掉drawable引用,能加快内存的回收。
public class RecyclerImageView extends ImageView
{
...
@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
setImageDrawable(null);
}
}
Picasso.with(this).load("http://i.imgur.com/DvpvklR.png").into(image);
2.图片存放在固定sdcard位置(下载本地并加载)
Picasso picasso = new Picasso.Builder(this).downloader(
new OkHttpDownloader(new File(path))).build();
Picasso.setSingletonInstance(picasso);
3.直接加载已经下载在本地
Picasso.with(this).load(new File(photoPath)).into(view);
//view 必须是imageview、自设置宽高
4.图片转换:转换图片以适应布局大小并减少内存占用
Picasso.with(context)
.load(url)
.resize(50,50)
.centerCrop()//imageview的屏幕比例
.into(imageView);
5.查看大图
Picasso.with(getApplication())
.load(mURL)
.memoryPolicy(NO_CACHE, NO_STORE)//其中memoryPolicy的NO_CACHE是指图片加载时放弃在内存缓存中查找,NO_STORE是指图片加载完不缓存在内存中。
.into(imageView);
6.自定义imageview 实现内存加速优化
重写ImageView的onDetachedFromWindow方法,去掉drawable引用,能加快内存的回收。
public class RecyclerImageView extends ImageView
{
...
@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
setImageDrawable(null);
}
}