第一步:指定layout_width与layout_height

在xml文件中设置的ImageButton的宽和高为:

android:layout_width="100dp"
android:layout_height="100dp"

第二步:设置属性android:scaleType

ImageView的xml属性 android:scaleType ,同代码调用 ImageView.setScaleType(ImageView.ScaleType)
android:scaleType 是控制图片如何 resized/moved来匹对ImageView的size。

android:scaleType值的意义区别:

  • CENTER /center 图片大小不变,居中显示,当图片长/宽超过View的长/宽,截取图片居中部分显示
  • CENTER_CROP / centerCrop 按比例扩大图片的size居中显示,使得图片长 (宽)大于等于View的长(宽)
  • CENTER_INSIDE / centerInside 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
  • FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示
  • FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置
  • FIT_START / fitStart 把图片按比例缩放到视图的最小边,显示在视图的上部分位置
  • FIT_XY / fitXY 把图片不按比例缩放到View的大小显示
  • MATRIX / matrix 用矩阵来绘制