依赖

//支持gif 的控件
implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.1'

工具方法

   private void updateGifLoopOne(GifImageView gif) {try {
//            3、动画启动说明
//            a、场景GIF每换一次页面,重新动画一次,每个页只动画1次//控制动画次数GifDrawable gifDrawable = (GifDrawable) gif.getDrawable();gifDrawable.reset();gifDrawable.setLoopCount(1);} catch (Exception e) {e.printStackTrace();}}

调用即可

<pl.droidsonroids.gif.GifImageViewandroid:id="@+id/imageViewMore"android:layout_width="24dp"android:layout_height="24dp"android:layout_marginTop="5dp"android:src="@drawable/user" />
mBtnHome.setImageResource(R.drawable.home_orange);//gif
updateGifLoopOne(mBtnHome);
mBtnHome.setImageResource(R.drawable.user);//png
glide依赖:

implementation 'com.github.bumptech.glide:glide:4.6.1'

1、图片加载显示类型

String url = "http://b.hiphotos.baidu.com/image/pic/item/dbb44aed2e738bd43212040dac8b87d6277ff9df.jpg";RequestOptions optionsce = new RequestOptions().centerCrop();//突出中间RequestOptions optionsf = new RequestOptions().fitCenter();//原型RequestOptions optionsci = new RequestOptions().circleCrop();//圆形图片RequestOptions options = new RequestOptions().override(200, 100);//指定尺寸RequestOptions options2 = new RequestOptions().placeholder(R.drawable.ic_camera);//占位图Glide.with(this).load(url).apply(options)//图片展示类型方法.into(imageView);

2、加载GIF图片

加载GIF图片

imageView = (ImageView)findViewById(R.id.testimage);
 
Glide.with(this)
        .load("http://guolin.tech/test.gif")//gif图片
        .into(imageView);

3、加载图片工具类

public class GlideUtil {public static void setPic(Object pic, ImageView imageView) {//填满图——突出中间,不完整if (pic instanceof String) {                            //完整图 android:scaleType="fitXY"pic = getImgUrl(String.valueOf(pic));               //同时去掉transform(new CenterCrop())}Glide.with(imageView.getContext()).applyDefaultRequestOptions(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.color.white)/* .error(R.drawable.image_default)*/.transform(new CenterCrop())).load(pic).into(imageView);}public static void setOrginalPic(String pic, ImageView imageView) {//原图pic = getImgUrl(pic);LogPlus.d("bindImage====" + pic);Glide.with(imageView.getContext()).applyDefaultRequestOptions(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.color.white)/* .error(R.drawable.image_default)*/).load(pic).into(imageView);}public static void setPic(String pic, ImageView imageView, int error) {pic = getImgUrl(pic);LogPlus.d("bindImage====" + pic);Glide.with(imageView.getContext()).applyDefaultRequestOptions(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.color.white).error(error)).load(pic).into(imageView);}public static void setCornerPic(Object image, ImageView imageView, float corner) {//圆角cornerif (image instanceof String) {image = getImgUrl(String.valueOf(image));}LogPlus.d("bindImage====" + image);Glide.with(imageView.getContext()).load(image).apply(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.color.white).transforms(new CenterCrop(), new RoundedCorners((int) corner))).into(imageView);}public static void setCirclePic(Object image, ImageView imageView) {//圆形图片if (image instanceof String) {image = getImgUrl(String.valueOf(image));}LogPlus.d("bindImage====" + image);Glide.with(imageView.getContext()).load(image).apply(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).transforms(new CenterCrop(), new CircleCrop())).into(imageView);}public static String getImgUrl(String image) {if (!TextUtils.isEmpty(image) && !image.contains("://")) {return "http..." + "/" + image;}return image;}
}
Glide.with( holder.imageView).load(getItem(position).getImg()).transform(new CenterCrop(), new RoundedCornersTransformation(mcontext.getResources().getDimensionPixelOffset(R.dimen.size_12pt), 0, RoundedCornersTransformation.CornerType.ALL))//可上半,下半,全部.error(mcontext.getResources().getDrawable(R.mipmap.img_commodity)).diskCacheStrategy(DiskCacheStrategy.ALL).into( holder.imageView);

glide工具类。加载显示原图片,显示圆角图片,gif图标显示相关推荐

  1. Android Glide加载圆形图片、圆角图片,部分圆角图片的使用方法

    Android Glide加载圆形图片.圆角图片,部分圆角图片的使用方法 前言 Gilde圆形图片/头像 Gilde普通圆角图片即四个角都是圆角 Gilde对指定角设置圆角 前言 通过本文,您可以实现 ...

  2. 当原图片加载失败时,如何让图片加载上我们默认给的图片

    我们可能会遇到这样的问题,当页面中的图片的加载失败时,我们想要该图片加载我们给的默认的图片,我在这里分享一下几种做法,希望对大家有所帮助. 1.在img标签中加上 οnerrοr="this ...

  3. android glide圆形图片,Glide原生方法加载圆形图片

    项目中需要用圆形图片,我们知道,Android原生是没有好用的圆形图片的,何况还要网络加载什么的.今天找了下Glide加载圆形图片的方法,基本都是这种,说得倒是很明白的,但是我自己加载时候没有找到相应 ...

  4. c语言运行不显示图片,为何加载烟花就换了一句,将图片加载进资源,结果运行中烟花不显示...

    为何加载烟花就换了一句,将图片加载进资源,结果运行中烟花不显示 为何将图片装载在资源中编译没任何错误,程序也可基本运行,资源中的图片不工作 #include     //标准的输入输出头文件 #inc ...

  5. Android 高清加载巨图方案 拒绝压缩图片

    Android 高清加载巨图方案 拒绝压缩图片 转载请标明出处:  http://blog.csdn.net/lmj623565791/article/details/49300989:  本文出自: ...

  6. iOS原生如何加载HTML中img标签的图片

    原文出自:iOS原生如何加载HTML中img标签的图片 前言 最近iOS App项目中使用Webview加载H5页面比较多,也有不少朋友经常问到这个问题,在这里我也学习学习如何通过iOS原生的方式来加 ...

  7. 网页加载的不同的方式、点击按钮显示一句话、jQuery中获取元素的方法

    网页加载的不同的方式 <!DOCTYPE html> <html lang="en"> <head><meta charset=" ...

  8. 高清加载巨图方案-拒绝压缩图片

    Android 高清加载巨图方案 拒绝压缩图片 转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/49300989: 本文出自:[张 ...

  9. C#实现网页加载后将页面截取成长图片 | Playwright版

    前言 如何将网页生成预览图? 要实现这个功能,可以用WebBrowser组件模拟浏览器,或者使用系统浏览器访问网页,再进行截图操作. 但是,这样需要编写大量的控制代码. 工欲善其事,必先利其器! 利用 ...

  10. Java对图片懒加载_[Java教程]JQuery实现图片懒加载_星空网

    JQuery实现图片懒加载 2018-08-16 0 懒加载的原因: 对于图片过多的场景,为了提高页面的加载速度,降低服务器的负载,增强用户体验,我们对还没出现在视野的图片先不加载,当元素出现在我们视 ...

最新文章

  1. ORACLE NOT EXISTS不等值 改写成hive
  2. java怎么输出集合_Java 输出集合中的元素
  3. 日常生活 -- 感悟
  4. C++ Opengl 粒子系统(Particles)源码
  5. [Android]Volley源代码分析(店)应用
  6. SAP Spartacus页面css类的赋值逻辑
  7. odata协议里filter操作自带的函数 - endswith
  8. 清华大学计算机学院主页,计算机图形学基础课程主页 | 清华大学计算机系
  9. JS编程建议——32:使用制表
  10. 彻底搞懂使用MyBatis时为什么Dao层不需要@Repository
  11. 关于国庆假期延长的通知
  12. 8-C++远征之继承篇-学习笔记
  13. 千脑——您的在线电脑
  14. html5 调用pc摄像头,H5调用PC端摄像头上传图片
  15. Docker Registry搭建私有镜像仓库(干货)http/https
  16. KafKa 开启 SASL 验证
  17. 简单的手电筒程序(基于Camera类实现)
  18. SVM训练莺尾花数据集
  19. 注册Git时遇到问题 - Unable to verify your captcha response.
  20. 自制Arduino便携式超声波测距仪

热门文章

  1. 前端学习(1982)vue之电商管理系统电商系统之删除参数的操作
  2. 前端学习(1852)vue之电商管理系统电商系统托管码云上
  3. 前端学习(1049):todolist正在进行和已经完成阶段2
  4. 第七十四期:从bug看11种编程语言演化史,果然如今Python比较流行
  5. mysql(1):查找语句练习
  6. Python time mktime()方法
  7. java 对应sql驱动版本_关于Oracle JDBC驱动版本、JDK版本、数据库版本对应关系(相关的报错:ORA-28040)...
  8. anaconda python删除pyltp_Anaconda使用
  9. eclipse debug怎么用_利用maven/eclipse搭建ssm(spring+spring mvc+mybatis)
  10. Redis的备份与恢复