Android控件属性详解

1.match_parent与fill_parent区别
2.layout_gravity与gravity的区别
3.src与background区别
4.ImageView.scaleType何种方式缩放图片,及显示图片的整体还是部分

1.match_parent与fill_parent区别

从Android 2.2开始FILL_PARENT改名为MATCH_PARENT ,从API Level为8开始我们可以直接用MATCH_PARENT来代替FILL_PARENT,他们的定义本质是一样均为-1,只是换了个别名,可能为了更准确些


Android控件属性详解_第1张图片
Android Studio 提示已被被弃用.jpg

2.layout_gravity与gravity的区别

gravity属性:对布局中控件位置的限定,设置控件相对于布局居中,设置为center。
layout_gravity属性:该view在父布局中的位置。

父布局的gravity="center_horizontal"与子控件的layout_centerHorizontal="true"区别

Android控件属性详解_第2张图片
水平居中代码对比

效果图对比,左图为使用父类gravity="center_horizontal"属性


Android控件属性详解_第3张图片
效果图对比.jpg

3.src与background区别

background:控件背景图片设置,根据控件的大小,拉伸图片。
src(source):图片资源,图片的原图大小,不改变图片的大小,称之为前景。
两者可同时使用。


Android控件属性详解_第4张图片
src与background代码的使用

背景与前景图的效果图对比


Android控件属性详解_第5张图片
左图背景、中图前景、右图背景与前景效果对比

4.ImageView.scaleType

该属性决定了图片在ImageView中以何种方式缩放;
查看源码,共有八种图像缩放类型

public enum ScaleType {
    //使用矩阵方式缩放
    ScaleType.MATRIX     ,//值为0
    ScaleType.FIT_XY      ,//值为1
    ScaleType.FIT_START ,     //值为2
    ScaleType.FIT_CENTER,      //值为3
    ScaleType.FIT_END ,     //值为4
    ScaleType.CENTER ,     //值为5
    ScaleType.CENTER_CROP,      //值为6
    ScaleType.CENTER_INSIDE  ;    //值为7
}

解释何为使用矩阵方式缩放图片

设置方式:

  • 1.代码中ImageView.setScaleType(ScaleType.MATRIX)
  • 2.在layout xml文件中android:scaleType="matrix"

图片伸缩类型设置
未完待续.....

你可能感兴趣的:(Android控件属性详解)