版权声明:本文为xing_star原创文章,转载请注明出处!
本文同步自http://javaexception.com/archives/173
最近几天碰到了ImageView的background,Image等问题,还花了一番精力查阅资料。今天有时间整理下,汇总下。
问题1
如何为ImageView设置背景图,背景图来自于http请求?
可以参考如下做法:
(Glide4.x)
Glide.with(this) .load(model.getPicture()) .into(new SimpleTarget<Drawable>() { @Override public void onResourceReady(Drawable resource, Transition<? super Drawable> transition) { imageView.setBackground(resource); } });
这种方式,参考的是用Glide获取Drawable给imageView设置图片
Glide.with(this) .load(model.getPicture()) .into(new SimpleTarget<Drawable>() { @Override public void onResourceReady(Drawable resource, Transition<? super Drawable> transition) { imageView.setImageDrawable(resource); } });
问题2
如果想要去掉之前设置的背景图,将imageView的背景恢复到默认状态呢?
imageView.setBackgroundResource(0);
问题3
如果这个ImageView是自定义view呢,比如就是CircleImageView,设置url后,圆角不生效?
不使用CircleImageView自己的裁剪圆角逻辑,使用Glide的bitmapTransform
Glide.with(this).load(avatarUrl).placeholder(R.drawable.ic_select_profile) .bitmapTransform(new CropCircleTransformation(this)) .into(imageView);