android imageview android:src,Android ImageView Src 和Background 区别

  • Post author:
  • Post category:其他


之前使用glide的时候被imageview的图片设置弄混了(很低级的问题,确是经常犯的问题),所以就去看了一下imageview,补补基础。

首先imageview有两个显示图片的属性,分别是src和background。从名字上看可以知道第一个是资源(画),第二个是背景(画框)。

如何设置这两个值呢?

//background

mimageview.setbackground();

mimageview.setbackgroundresource();

mimageview.setbackgroundcolor();

mimageview.setbackgrounddrawable();

//src

mimageview.setimageresource();

mimageview.setimagedrawable();

mimageview.setimageuri();

其中设置background的4个方法中,最终都是调用了setbackgrounddrawable()这个@deprecated的方法,额。

一些区别:

1.src存放的是原图大小, background会根据组件的大小进行拉伸。

2.src是图片的内容(画),background是图片的背景(画框),可以同时存在。

3.background可以设置透明度,src不可以。

4.scaletype只对src起作用。这篇文字解释的很清楚->scaletype详解

5.自定义imageview中画图的时候使用setbackgrounddrawable。如果使用setimagedrawable,需要设置setintrinsicheight和setintrinsicwidth,不然不会显示的,具体原因去看看源码吧。

通过此文希望能帮助到有需要的小伙伴,谢谢大家对本站的支持!