• ImageButton设置src图片大小


    需求&起因

    有时候没有找到合适大小的资源,需要修改图片大小而且不改变ImageButton的大小。可以通过缩放图片大小的方式改变外观。

    ImageView的属性android:scaleType也适用于ImageButton

    ImageView的scaleType属性取值:matrix(默认), center, centerCrop, centerInside, fitCenter, fitEnd, fitStart, fitXY

    大致分为两类:不改变原图尺寸;缩放原图尺寸

    1、scaleType=“matrix”//不改变原图的大小,从ImageView的左上角开始绘制原图,原图超过ImageView的部分作裁剪处理。

    2、scaleType=“Center”//不改变原图的大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像,超过部分裁剪。
    3、scaleType=“centerCrop”//将原图的中心对准ImageView的中心,等比例放大原图,直到填满ImageView为止(指的是ImageView的宽和高都要填满)。如果原图尺寸大于ImageView尺寸,超过部分裁剪。
    4、scaleType=“centerInside”//将图片的内容完整居中显示,通过按比例缩放原图的size宽(高)等于或小于ImageView的宽(高)。如果原图的size本身就小于ImageView的size,则原图居中显示。
    5、scaleType=“fitXY”//把原图按照指定的大小在View中显示,拉伸显示图片,不保持原比例,填满ImageView
    6、scaleType=“fitStart”//把原图按比例缩放到ImageView的高度,与ImageView左边对齐
    7、scaleType=“fitCenter”//把原图按比例缩放到ImageView的高度,居中显示
    8、scaleType=“fitEnd”//把原图按比例缩放到ImageView的高度,与ImageView右边对齐

    padding属性

    控制内边距,paddingTop paddingBottom paddingStart paddingEnd 分别控制上下左右的边距

    而ImageButton直接设置padding是没有效果的

    实现

    android:scaleType设置为 android:scaleType=“fitXY”

    然后设置padding,调整padding的大小改变图片的尺寸,图片不保证原比例。

    替代方案

    可以用Layout和ImageView 替代ImageButton, 不用设置android:scaleType属性,直接设置ImageView的大小即可。

  • 相关阅读:
    一个MMORPG的常规技能系统
    as3.2版本中中jar生成方法
    lua中的weak table
    lua中使用table实现类和继承
    Javascript-设计模式_代理模式
    Javascript-设计模式_职责链模式
    Javascript-设计模式_策略模式
    前端安全第四期
    前端安全第三期
    前端安全第二期
  • 原文地址:https://www.cnblogs.com/tang-skillhunter/p/8540791.html
Copyright © 2020-2023  润新知