Android图片处理框架之Picasso学习使用

来源:互联网 发布:淘宝线下推广计划 编辑:程序博客网 时间:2024/06/05 15:21

一、概述
1、简介
Picasso是Square公司出品的为Android提供一个强大的图像下载和缓存库。
2、Picasso特点
1)Picasso解决,在adapter中需要取消已经不在视野范围的ImageView图片资源的加载,否则会导致图片错位的问题。
2)使用复杂的图片压缩转换来尽可能的减少内存消耗。
3)自带内存和硬盘二级缓存功能。
3、使用场景

  • 加载图片不能错位;
  • 资源消耗要低;
  • 加载速度要快;
  • 异步加载图片。

4、官方参考
GitHub地址:https://github.com/square/picasso
二、使用Picasso处理图片
1、依赖库

compile 'com.squareup.picasso:picasso:2.5.2'

如果需要对图片变化处理,则需要依赖库

    compile 'jp.wasabeef:picasso-transformations:2.1.0'

2、Picasso基本用法

// 普通加载图片 Picasso.with(this).load(url).into(ivPicassoResult1);

3、使用方式整理

// 裁剪的方式加载图片Picasso.with(MainActivity.this).load("http://n.sinaimg.cn/translate/20160819/9BpA-fxvcsrn8627957.jpg").resize(100, 100)//裁剪图片大小.into(ivPicassoResult2);// 选择180度旋转Picasso.with(MainActivity.this)                .load("http://n.sinaimg.cn/translate/20160819/9BpA-fxvcsrn8627957.jpg").rotate(180)//旋转设置.into(ivPicassoResult3);// load SD卡资源Picasso.with(MainActivity.this).load("file://+Environment.getExternalStorageDirectory().getPath()+/meinv1.jpg").placeholder(R.mipmap.ic_launcher)//资源加载过程中的显示的图片.error(R.mipmap.ic_launcher)//设置load失败时显示的Drawable。.into(ivPicassoResult4);// load assets资源:Picasso.with(MainActivity.this).load("file:///android_asset/demo.jpg").placeholder(R.mipmap.ic_launcher)//资源加载过程中的显示的图片.error(R.mipmap.ic_launcher)//设置load失败时显示的Drawable。.into(ivPicassoResult5);// load drawable资源: Picasso.with(MainActivity.this).load(R.drawable.demo).placeholder(R.mipmap.ic_launcher)//资源加载过程中的显示的图片.error(R.mipmap.ic_launcher)//设置load失败时显示的Drawable。.into(ivPicassoResult6);

4、使用Transformations对图片进行变换处理

  Picasso.with(context) .load(R.drawable.check).resize(width, height).centerCrop().transform((new MaskTransformation(context,R.drawable.mask_starfish))).into(holder.image);

picasso-transformations库地址:
https://github.com/wasabeef/picasso-transformations

三、Demo
1、Demo效果
这里写图片描述
2、Demo地址:
https://github.com/TDCQZD/PicassoTest
四、源码解析
推荐博客:
http://www.codeceo.com/article/android-picasso.html
自定义缓存设置:
http://blog.csdn.net/u012702547/article/details/52273918

结束语:
首先感谢尚硅谷无偿提供的学习资料。写博客是为了帮助开发者学习使用技术,同时巩固自己所学技术。如果此篇博客有助于您的学习,那是我的荣幸!如果此篇博客有任何瑕疵,请多多指教!在此感谢您的学习和指教!

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 2个月宝宝鼻塞怎么办 人淹死捞不上来怎么办 胶囊卡在胃里怎么办 药卡在气管里怎么办 胶囊药卡在气管怎么办 被胶囊卡在喉咙怎么办 药卡在食道里怎么办 胶囊黏在喉咙里怎么办 要一直卡在喉咙怎么办 胃老是往上反气怎么办 有口气憋在喉咙怎么办 肛裂伤口不愈合怎么办 肛裂口子不愈合怎么办 宝宝胃食道反流怎么办 去角质后脸发红怎么办 红烧肉做的太甜怎么办 红烧排骨太甜了怎么办 唱歌时嗓子有痰怎么办 一唱歌喉咙有痰怎么办 鼻子老是打喷嚏还流鼻涕怎么办 鼻涕流到喉咙里怎么办 鼻塞怎么办怎样让鼻通气 流清鼻涕嗓子疼怎么办 喉咙疼咳嗽有痰怎么办 扁桃体发炎痛得厉害怎么办 腭垂掉下来了怎么办 喉咙干有异物感怎么办 嗓子干有异物感怎么办 输液的时候手疼怎么办 一感冒就嗓子哑怎么办 4岁儿童喉咙沙哑怎么办 嗓子老有异物感怎么办 喉咙咽口水都疼怎么办? 舌头上长了溃疡怎么办 包包的拉链坏了怎么办 做试管取精困难怎么办 sw过膝靴往下掉怎么办 如果被绑架了该怎么办 怀孕了%2c怎么办%3f 狗狗拉肚子怎么办带血 同学们不和我玩怎么办