GlIDe 加载图片使用到的两个记录
GlIDe 加载图片保存至本地指定路径
/** * GlIDe 加载图片保存到本地 * * imgurl 图片地址 * imgname 图片名称 */ GlIDe.with(context).load(imgurl).asBitmap().toBytes().into(new SimpleTarget<byte[]>() { @OverrIDe public voID onResourceReady(byte[] bytes,GlIDeAnimation<? super byte[]> glIDeAnimation) { try { savaBitmap(imgname,bytes); } catch (Exception e) { e.printstacktrace(); } } });// 保存图片到手机指定目录 public voID savaBitmap(String imgname,byte[] bytes) { if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { String filePath = null; fileOutputStream fos = null; try { filePath = Environment.getExternalStorageDirectory().getCanonicalPath() + "/Myimg"; file imgDir = new file(filePath); if (!imgDir.exists()) { imgDir.mkdirs(); } imgname = filePath + "/" + imgname; fos = new fileOutputStream(imgname); fos.write(bytes); Toast.makeText(context,"图片已保存到" + filePath,Toast.LENGTH_SHORT).show(); } catch (IOException e) { e.printstacktrace(); } finally { try { if (fos != null) { fos.close(); } } catch (IOException e) { e.printstacktrace(); } } } else { Toast.makeText(context,"请检查SD卡是否可用",Toast.LENGTH_SHORT).show(); } }
GlIDe 加载图片回调方法
GlIDe.with(context).load(imgurl) .Listener(new RequestListener<String,GlIDeDrawable>() { @OverrIDe public boolean onException(Exception e,String model,Target<GlIDeDrawable> target,boolean isFirstResource) { // 可替换成进度条 Toast.makeText(context,"图片加载失败",Toast.LENGTH_SHORT).show(); return false; } @OverrIDe public boolean onResourceReady(GlIDeDrawable resource,boolean isFromMemoryCache,boolean isFirstResource) { // 图片加载完成,取消进度条 Toast.makeText(context,"图片加载成功",Toast.LENGTH_SHORT).show(); return false; } }).error(R.mipmap.ic_launcher_round) .diskCacheStrategy(diskCacheStrategy.ALL) .into(imageVIEw);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结以上是内存溢出为你收集整理的android中Glide实现加载图片保存至本地并加载回调监听全部内容,希望文章能够帮你解决android中Glide实现加载图片保存至本地并加载回调监听所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)