• ImageView的八种ScaleType


    ImageView 可以通过ScaleType属性调整图片在控件上的缩放显示方式

    ScaleType一共有八种

    属性描述
    MATRIX绘制时使用图像矩阵进行缩放
    FIT_XY不按照比例缩放图片,将图片塞满整个View
    FIX_START按比例缩放图片,顶部显示
    FIT_CENTER按比例缩放图片,居中显示
    FIT_END按比例缩放图片,底部显示
    CENTER不缩放,居中显示
    CENTER_CROP按比例缩放图片,居中显示
    CENTER_INSIDE按比例缩放,将图片完全显示在View内

    MARIX

    通过图像矩阵进行设置,操作十分灵活

    java代码

    Matrix matrix = new Matrix();
    matrix.setScale(1.0f, 1.0f);
    mImageView.setImageMatrix(matrix);
    
    • 1
    • 2
    • 3

    xml代码

    android:scaleType="matrix"
    
    • 1

    FIT_XY

    不按照比例缩放图片,将图片塞满整个View

    使用Matrix.ScaleToFit#FILL进行缩放,在X和Y方向上独立缩放,以便src与dst精确匹配。这可能会改变src的纵横比。

    java代码

    mImageView.setScaleType(ImageView.ScaleType.FIT_XY);
    
    • 1

    xml代码

    android:scaleType="fitXY"
    
    • 1

    FIT_START

    按比例缩放图片,将图片完全显示,缩放某一边匹配View。在上边或左边显示

    使用Matrix.ScaleToFit#START缩放,计算将保持原始src纵横比的比例,但也将确保src完全适合dst。至少有一个轴(X或Y)将精确匹配。开始将结果与dst的左边缘和上边缘对齐。

    java代码

    mImageView.setScaleType(ImageView.ScaleType.FIT_START);
    
    • 1

    xml代码

    android:scaleType="fitStart"
    
    • 1

    FIT_CENTER

    按比例缩放图片,将图片完全显示,缩放某一边匹配View。居中显示

    使用Matrix.ScaleToFit#CENTER缩放图像,计算将保持原始src纵横比的比例,但也将确保src完全适合dst。至少有一个轴(X或Y)将精确匹配。结果集中在dst内。

    java代码

    mImageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
    
    • 1

    xml代码

    android:scaleType="fitCenter"
    
    • 1

    FIT_END

    按比例缩放图片,见图片完全显示,缩放某一边匹配View。在下边或右侧显示

    使用Matrix.ScaleToFit#END缩放图像。计算将保持原始src纵横比的比例,但也将确保src完全符合dst。至少有一个轴(X或Y)将精确匹配。END将结果与dst的右边缘和下边缘对齐。

    java代码

    mImageView.setScaleType(ImageView.ScaleType.FIT_END);
    
    • 1

    xml代码

    android:scaleType="fitEnd"
    
    • 1

    CENTER

    不缩放,居中显示

    java代码

    mImageView.setScaleType(ImageView.ScaleType.CENTER);
    
    • 1

    xml代码

    android:scaleType="center"
    
    • 1

    CENTER_CROP

    按比例缩放图片,缩放到短边匹配View视图。居中显示

    均匀缩放图像(保持图像的纵横比),以便图像的两个维度(宽度和高度)都等于或大于视图的相应维度(减去填充)。然后,图像在视图中居中。

    java代码

    mImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
    
    • 1

    xml代码

    android:scaleType="centerCrop"
    
    • 1

    CENTER_INSIDE

    按比例缩小,不会拉伸,将图片的长边完全显示在View内。居中显示

    均匀缩放图像(保持图像的纵横比),以便图像的两个维度(宽度和高度)都等于或小于视图的相应维度(减去填充)。然后,图像在视图中居中。

    java代码

    mImageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
    
    • 1

    xml代码

    android:scaleType="centerInside"
    
    • 1

    整体效果图
    在这里插入图片描述

  • 相关阅读:
    极智开发 | 讲讲 DOM 树
    2、skywalking-安装(Docker-Compose方式)
    Linux gcc和make学习
    接口自动化必学的20个难点,学完至少涨5k
    简单dp刷题回忆录
    在 Git 中删除不再位于远程仓库中的本地分支
    Python从0到100(二):Python语言介绍及第一个Pyhon程序
    RocketMQ学习(3) 秒杀实战
    九、Linux高阶命令
    深度学习三巨头邀你来参会!赢取RTX 3090!NVIDIA GTC 2022 AI 大会来了!
  • 原文地址:https://blog.csdn.net/Jun_P/article/details/126557134