/** * 初始化单例Picasso对象 确保Picasso的唯一性 */ private void initPicasso() { //配置Picasso Picasso picasso = new Picasso.Builder(this) //设置内存缓存大小,10M .memoryCache(new LruCache(10 << 20)) //下载图片的格式,这样可以节省一半的内存 .defaultBitmapConfig(Bitmap.Config.RGB_565) //配置下载器,这里用的是OkHttp,必需单独加OkHttp,同时设置了磁盘缓存的位置和大小 //.downloader(new UrlConnectionDownloader()) //.downloader(new OkHttpDownloader(getCacheDir(), 20 << 20)) .downloader(new MyOkHttpDownloader(this.getCacheDir() , 10<<20)) //设置图片左上角的标记 //红色:代表从网络下载的图片 //蓝色:代表从磁盘缓存加载的图片 //绿色:代表从内存中加载的图片 .indicatorsEnabled(true) //.loggingEnabled(true) .build(); Picasso.setSingletonInstance(picasso); }-----------------------------------------------------------------case R.id.button_url: Picasso.with(mContext).load(KEY_URL).into(imageView_show); break;case R.id.button_res: Picasso.with(mContext) .load(R.mipmap.steven) .placeholder(R.mipmap.ic_launcher) .error(R.mipmap.ic_launcher) .noFade() /*.resize(100 ,100) .fit()*/ //.resizeDimen() .transform(new Transformation() { @Override public Bitmap transform(Bitmap source) { int size = Math.min(source.getWidth(), source.getHeight()); Bitmap bm = Bitmap.createBitmap(source, 0, 0, size, size); source.recycle(); return bm; } @Override public String key() { return "square"; } }) .config(Bitmap.Config.RGB_565) .memoryPolicy(MemoryPolicy.NO_STORE, MemoryPolicy.NO_CACHE) .rotate(90) .tag("json") .into(imageView_show); break;case R.id.button_assets: Picasso.with(mContext).load("file:///android_asset/salary.jpg").into(imageView_show); break;case R.id.button_sd: //获取SD卡中图片的路径 String filePath = SDCardHelper.getSDCardPrivateCacheDir(mContext) + File.separator + fileName; Picasso.with(mContext).load(new File(filePath)).into(imageView_show); break;Picasso的四种加载图片的方式