2.1.3_图像视图_ImageView

属性详解
  1. src 设置前景图
    • 默认情况下,图片按照本身尺寸显示
    • 若给ImageView指定了具体的宽高,则图片 放大/缩小来适配。且图片会显示在ImageView的中心点处
  2. background 设置背景图
    • 被设置为背景图的图片,会填充ImageView的所有空间,不管ImageView的形状。因此存在被拉伸变形的问题。
    • 解决背景图拉伸变形的问题
      • 方案1、指定ImageView的宽高比等于背景图的宽高比
      • 方案2、在drawable文件夹里面创建xml文件,并在使用background属性时指定该xml




  1. ImageView可以设置padding属性控制内边距,当然只对 src 设置的图片有效。
  2. ImageView等比缩放
    设置 android:maxHeightandroid:maxWidthandroid:adjustViewBounds="true"三个属性就可以设置ImageView随图片大小自行改变大小且有上限控制、保持图片比例。当然记得把图片宽高设为 wrap_content
  3. 图片缩放处理 android:scaleType
    • fitXY:对图像的横向与纵向进行独立缩放,使得该图片完全适应ImageView,但是图片的横纵比可能会发生改变
    • fitStart:保持纵横比缩放图片,知道较长的边与Image的编程相等,缩放完成后将图片放在ImageView的左上角
    • fitCenter:同上,缩放后放于中间;
    • fitEnd:同上,缩放后放于右下角;
    • center:保持原图的大小,显示在ImageView的中心。当原图的size大于ImageView的size,超过部分裁剪处理。
    • centerCrop:保持横纵比缩放图片,知道完全覆盖ImageView,可能会出现图片的显示不完全。相当于先按照 来操作图片,然后等比放大图片直到整个ImageView被填满。
    • centerInside:保持横纵比缩放图片,直到ImageView能够完全地显示图片。相当于把图片放在ImageView的中心,然后进行放大/缩小操作,直到图片能够完全显示。
    • matrix:默认值,不改变原图的大小,从ImageView的左上角开始绘制原图, 原图超过ImageView的部分作裁剪处理

你可能感兴趣的:(2.1.3_图像视图_ImageView)