关于图片加载缓存框架Picasso的学习与使用

来源:互联网 发布:ios socket编程 demo 编辑:程序博客网 时间:2024/04/29 00:19
public class PicassoUtil {    /**     * @Description: 从指定path加载图片按照指定大小居中填充显示     * @Author: Yong     * @Created at: 2016/10/10 10:36     */    public static void loadImageInSize(Context context, String path, int width, int height, ImageView image){        Picasso.with(context).load(path).resize(width,height).centerCrop().into(image);    }    /**     * @Description: 等待加载过程中或加载失败时,从本地资源中显示一张图片     * @Author: Yong     * @Created at: 2016/10/10 10:41     */    public static void loadImageWithHodler(Context context,String path,int resID,ImageView image){        Picasso.with(context).load(path).fit().placeholder(resID).into(image);    }    /**     * @Description: 加载图片并进行相应的裁剪压缩     * @Author: Yong     * @Created at: 2016/10/10 10:59     */    public static void loadImageCompress(Context context,String path,ImageView image){        Picasso.with(context).load(path).transform(new PictureCompress()).into(image);    }    /**     * @Description: 裁剪压缩图片工具类     * @Author: Yong     * @Created at: 2016/10/10 10:58     */    public static class PictureCompress implements Transformation{        @Override        public Bitmap transform(Bitmap source) {            int Size=Math.min(source.getWidth(),source.getHeight());            int X=(source.getWidth()-Size)/2;            int Y=(source.getHeight()-Size)/2;            Bitmap result=Bitmap.createBitmap(source,X,Y,Size,Size);            if (result!=null)                source.recycle();            return result;        }        @Override        public String key() {            return "PicassoPictureCompress";        }    }}
0 0