Glide placeholder 圆角失效

2018-10-09 23:10:54


解决办法,一种是不使用占位符,另外一种则是不使用默认动画。

我选择了第二种,因为我至今没发现使用默认动画有什么效果。


圆角我是用的第三方控件,加载图片用的是glide。  然而placeholder 会把图片再此撑为直角。


项目之前使用的图片加载库是universal-image-loader,但是此库已经好久不维护了,同时也发现了更加不错的图片加载库,也就是Glide,用起来很方便并且内存占用量还很令人满意,所以决定大刀阔斧的将之前的加载库换成Glide。

但是在换用户头像相关模块的时候发现问题了,就是加载网络图片时第一次加载死活加载不出来,头像控件使用的是CircleImageView,最后换成ImageView试验,发现没有问题,这就找出问题所在了,就是CircleImageView这个控件和Glide之间的关系了。

查找相关资料后,找出问题所在以及解决方案如下:

1、使用Glide默认没有圆角转换的功能,需要使用自定义Transformation,但无法实现placeholder图片的圆角转换,但是圆角图片,使用CircleImageView,虽然CircleImageView继承ImageView,不能使用scaleType参数,否则报InflateException。CircleImageView 源码主动抛出的异常。

2、问题出现的原因就是使用自定义ImageView,如CircleImageView,通过Glide加载网络图片,且设置了占位符,如placeholder或error,则第一次不显示网络图片

3、解决办法有两种,一种是不使用占位符,另外一种则是不使用默认动画。


Glide.with(getContext()).load(imgUrl).dontAnimate()//防止设置placeholder导致第一次不显示网络图片,只显示默认图片的问题.placeholder(R.drawable.icon_default).into(mImageView);

--------------------- 作者:erweimaerweima 来源:CSDN 原文:https://blog.csdn.net/lvshuchangyin/article/details/56670157?utm_source=copy 版权声明:本文为博主原创文章,转载请附上博文链接!


  • 2020-12-07 16:14:22

    nodejs队列实现amqplib,rabbitmq

    其中StartConsumer 会在项目启动时启动,在整个生命周期中一直保持监听状态,在程序结束时mq的链接关闭。需要注意的是 noAck 这个参数,当为false是表示消息出队后不会自动删除,如果设置成true,则无论消息处理成功与否此消息会被删除。注意到在消息不成功是,调用了ch.nack(msg)),此方法是将消息重新入队。

  • 2020-12-07 16:15:46

    RabbitMQ详解

    当前市面上mq的产品很多,比如RabbitMQ、Kafka、ActiveMQ、ZeroMQ和阿里巴巴捐献给Apache的RocketMQ。甚至连redis这种NoSQL都支持MQ的功能。 ActiveMQ ActiveMQ是apache出品,最流行的,能力强劲的开源消息总线,并且它一个完全支持JMS规范的消息中间件。其丰富的API、多种集群构建模式使得它成为业界老牌消息中间件,在中小型企业中应用广泛。

  • 2020-12-07 16:17:53

    nodejs用redis实现队列操作

    其实nodejs实现队列的方式又很多中,也有很多开源的插件和队列数据库可以使用,但是呢,如果我们一个简单的项目,完全可以使用redis来实现队列, 这样再不增加技术难度的同事,我们也就可以完美的实现一个队列

  • 2020-12-07 22:02:44

    intellij idea远程开发的几个想法

    我之前是用idea上面自带的stfp来做的本地开发同步到linux服务器编译,但是我发现这个如果多个客户端同时开发,或者多个同事一起开发,服务器上的就不能更新到本地。是不能增量更新到本地,必须全部下载,比对下载也行,但是工程量打了就特别慢。

  • 2020-12-07 22:06:13

    System Extension Blocked - warning

    After upgrading your macOS computer to High Sierra 10.13.4 or higher (starting in April 2018), you may see a message about a System Extension Blocked. At Williams we have seen this warning appear for these programs:

  • 2020-12-08 08:57:12

    win10上使用win-sshfs

    首先在GitHub上下载DokanSetup-1.0.5.1000和WinSSHFS-1.6.1.13-devel 注意:Dokan不能使用最新的版本,得使用1.0.5版本。要不win-sshfs会报Dokan版本错误的问题。(win10版本)