• android:scaleType属性


    ImageView.ScaleType.CENTER|android:scaleType="center" 以原图的几何中心点和ImagView的几何中心点为基准,按图片的原来size居中显示,不缩放,当图片长/宽超过View的长/宽,则截取图片的居中部分显示ImageView的size.当图片小于View 的长宽时,只显示图片的size,不剪裁。

    ImageView.ScaleType.CENTER_CROP|android:scaleType="centerCrop以原图的几何中心点和ImagView的几何中心点为基准,按比例扩大(图片小于View的宽时)图片的size居中显示,使得图片长 (宽)等于或大于View的长(宽),并按View的大小截取图片。当原图的size大于ImageView时,按比例缩小图片,使得长宽中有一向等于ImageView,另一向大于ImageView。实际上,使得原图的size大于等于ImageView

    ImageView.ScaleType.CENTER_INSIDE|android:scaleType="centerInside以原图的几何中心点和ImagView的几何中心点为基准,将图片的内容完整居中显示,通过按比例缩小原来的size使得图片长(宽)等于或小于ImageView的长(宽)

    ImageView.ScaleType.FIT_CENTER|android:scaleType="fitCenter" 把图片按比例扩大(缩小)到View的宽度,居中显示

    ImageView.ScaleType.FIT_END|android:scaleType="fitEnd把图片按比例扩大(缩小)到View的宽度,显示在View的下部分位置

    ImageView.ScaleType.FIT_START|android:scaleType="fitStart把图片按比例扩大(缩小)到View的宽度,显示在View的上部分位置

    ImageView.ScaleType.FIT_XY|android:scaleType="fitXY" 把图片按照指定的大小在View中显示,拉伸显示图片,不保持原比例,填满View.

    ImageView.ScaleType.MATRIX|android:scaleType="matrix" 用matrix来绘制

    附:更简单的scaleType说明:

    CENTER /center 在视图中心显示图片,并且不缩放图片

    CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度

    CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度

    FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示

    FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置

    FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置

    FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示

    MATRIX / matrix 用矩阵来绘制

     

    依本人之见,scaletype的种类分为三类matrix(默认)、fit-X类、和center类。matrix就不多说。fit-X类中,
    fitStart、fitCenter和fitEnd之间的都是根据需要使原图改变对ImgView进行适应,不剪裁,按matrix进行绘制,但它们
    的区别在于基准不同。fitStart的基准为最上角的点(即matrix方式开始的点)fitCenter的基准点为中间的点
    (matrix方式中可以使图片居中的点),而fitEnd的基准点为右下角的点(即matrix方式最后绘制点)。center类
    中,center、centerCrop、centerInside都是以原图的几何中心点和ImagView的几何中心点为基准,且只绘制
    ImagView大小的图像,不同的是是否保持原图大小和绘图的目标不同、采取的手段不同

  • 相关阅读:
    使用 Node.js 实现简单的 Webhook
    乐橙平台大华监控Android端实时预览播放
    解决ScrollView嵌套百度地图滑动冲突
    解决ViewPager与百度地图滑动冲突
    SpringBoot+MybatisPlus+MySql 自动生成代码 自动分页
    SpringBoot+Mybatis+MySql 自动生成代码 自动分页
    Android MVP框架实现登录案例
    Android属性动画-简单实例
    SpringBoot2+Druid+JdbcTemplate+MySql实现增删改查
    SpringBoot2+Druid+MyBatis+MySql实现增删改查
  • 原文地址:https://www.cnblogs.com/raker/p/2757557.html
Copyright © 2020-2023  润新知