Android ImageView用法(xml)
ImageView继承自View
android:background 设置图片
android:src 设置图片
background和src都可以设置图片,它们之间的区别:
- background指的是背景,src指的是内容。
- 在使用src填入图片时,是按照图片大小直接填,不会改变图片的大小,而使用background,则会根据ImageView给定的宽度进行拉伸。
当使用src时,如果图片在ImageView里面放不下,则图片会等比例缩小到合适大小再显示,在图片的缩小过程中保持了长宽比,缩小后默认放在ImageView的*位置,此时设置adjustViewBounds为true或false不影响图片的缩放。此时由于图片是处于缩放状态下,所以此时设置图片的maxHeight和maxWidth都是无效的。此时的scaleType默认是fitCenter(因为图片默认放在*位置),可以通过设置scaleType为fitStart或fitEnd分别将图片放于ImageView的左上角或右下角。
当图片可以在不缩放的情况下存在于ImageView时,图片会默认居中显示,此时可以通过设置 adjustViewBounds、maxHeight和maxWidth来控制图片的缩放。
scaleType属性
值 | 说明 |
---|---|
fitStart | 保持纵横比缩放图片,直到较长的边与Image的边长相等,缩放完成后将图片放在ImageView的左上角 |
fitCenter | 同上,缩放后放于中间(默认) |
fitEnd | 同上,缩放后放于右下角 |
centerCrop | 按横纵比缩放,直接完全覆盖整个 ImageView |
centerInside | 按横纵比缩放,使得 ImageView 能够完全显示这个图片 |
fitXY | 不按比例缩放图片,目标是把图片塞满整个 View |
matrix | ImageView 的左上角开始绘制原图,原图超过 ImageView 的部分作裁剪处理 |
center | 保持原图的大小,显示在 ImageView 的中心,当原图的 size 大于 ImageView 的 size,超过部分裁剪处理 |
alpha属性:设置透明度
adjustViewBounds属性:设置是否保持长宽比
adjustViewBounds属性用于设置缩放时是否保持原图长宽比,单独设置不起作用,需要配合 maxWidth 和 maxHeight 属性一起使用,而后面这两个属性也是需要 android:adjustViewBounds 为 true 才会生效,三者是共生关系。
https://www.twle.cn/l/yufei/android/android-basic-imageview.html
本文地址:https://blog.csdn.net/m0_46430075/article/details/107945280