彻底记住ImageView的background和src的区别

时间:2021-7-3 作者:qvyue

彻底记住ImageView的background和src的区别

示例代码

区别:

①background会根据ImageView控件的宽高,拉伸Drawable;src会保持Image的尺寸
②background是背景,src是内容(foreground),他们可以同时存在。
③ScaleType只会作用在src上面。

background:

background是View的属性,具体是android.R.styleable#View_background属性,它的生效时机是View#draw(Canvas canvas)方法。
View#draw(Canvas canvas)方法中,会先调用View#drawBackground(Canvas canvas)方法来绘制背景。
接着会调用onDrawdispatchDrawonDrawForeground等方法。

src:

src是ImageView的属性,具体是android.R.styleable#ImageView_src属性,它是在onDraw方法中绘制对应的mDrawable属性的,具体调用时机在background绘制之后。

参考

The difference between SRC and background in Android _android

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。