Android七大布局

作者: lllllliudahong | 来源:发表于2018-09-04 19:23 被阅读0次

    最近开始复习Android,突然发现自己以前没怎么写笔记,没有体系。一看Android的布局都有七大了,所以决定一边复习,一边记录。

    七大布局分别为:线性布局(LInearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)、表格布局(TableLayout)、绝对布局(absoluteLayout)、网格布局(GridLayout)、约束布局(ConstraintLayout)

    1.线性布局(LInearLayout)

    主要属性:

    1.1 orientation设置布局管理器内组件的排列方式,可以设置为horizontal(横向)、vertical(纵向)两个值之一

    1.2 gravity设置布局管理器内组件的对齐方式,layout_gravity控制自己在父元素的位置。

    1.3 layout_weight设置权重,推荐layout_width="0dp"或layout_height="0dp"。

    2.相对布局(RelativeLayout)

    主要属性:

    3.帧布局(FrameLayout)

    继承自ViewGroup组件,很少使用这个布局,主要可以使布局叠加。FrameLayout为每个加入其中的组件创建一个空白的区域(称为一帧),每个子组件占据一帧,这些帧会根据gravity属性执行自动对齐。

    4.表格布局(TableLayout)

    TableLayout包裹TableRow(行数),

    TableRow包裹view(列数)。

    shrinkColumns属性:当TableRow里边的空间布满布局的时候,指定列自动延伸以填充可用部分。当TableRow里边的控件还没有布满布局时,不起作用。 

    tretchColumns属性:设置可伸展的列。该列可以向行方向伸展,最多可占据一整行。

    collapseColumns属性:设置要隐藏的列。

    5.绝对布局(absoluteLayout)

    绝对布局是需要指定子元素的 xy 精确坐标的布局。绝对布局缺乏灵活性,在没有绝对定位的情况下相比其他类型的布局更难维护,不建议使用。

    6.网格布局(GridLayout)

    Android4.0(API Level 14)新引入的网格矩阵形式的布局控件。

    使用的时候需要注意兼容:

    compile 'com.android.support:gridlayout-v7:22.+'

    7.约束布局(ConstraintLayout)

    Android Studio 2.2推出的新布局,并从Android Studio 2.3开始成为默认布局。

    它的出现是为了解决复杂布局时,布局嵌套过多的问题(嵌套布局会增加绘制界面所需的时间)

    相关属性

    相关文章

      网友评论

        本文标题:Android七大布局

        本文链接:https://www.haomeiwen.com/subject/drgrwftx.html