/*---------------------------------------- *-描述--Layout的几点总结. *-描述--S1.安卓的五大布局: * LinearLayout(线性布局):常用 * RelativeLayout(相对布局):常用 * FrameLayout(框架布局):常用 * GridLayout(网格布局)[4.0之后新增网格布局]:使用较少 * TableLayout(表格布局):几乎不用. *-描述--S2.. *-描述--S3.. *-描述--None. *---------------------------------------------------------------------------*/
/*---------------------------------------- *-描述--LinearLayout的几点总结. *-描述--S1.线性布局的几个重要属性: * ---基本属性: * id 标识,唯一标识 * layout_width 宽,布局/控件的宽度 * layout_height 高,布局/控件的高度 * background 设置背景,可设置为颜色或图片等 * *---线性布局的特有的属性: * orientation 布局的方向,水平或垂直 * weightSum 指定布局方向上可分为多少份 * layout_weight 子控件占的份数(权重) * * ---对齐属性: * gravity 指定子控件的重力属性 * layout_gravity 相对母布局的重力属性 * padding(Left/Right/Top/Button/Start/End) 向内挤压子控件 * layout_margin(Left/Right/Top/Button/Start/End) 向外挤压母控件(布局) * * ---其他属性: * tag 另一个标示,类似id * onClick/visibility/alpha/ * *-描述--S2.padding/layout_margin Start/End API17开始支持,推荐Start/End. *-描述--S3.注意各控件之间的相互影响或冲突关系,否则布局的结果不符合预期, * 如指定orientation为垂直后,子控件的gravity垂直方向属性失效. * 如指定orientation为垂直后,weightSum对应的方向也是垂直. *-描述--None. *---------------------------------------------------------------------------*/ /*---------------------------------------- *-描述--RelativeLayout的几点总结. *-描述--S1.相对布局的几个重要属性: * ---基本属性: * id 标识,唯一标识 * layout_width 宽,布局/控件的宽度 * layout_height 高,布局/控件的高度 * background 设置背景,可设置为颜色或图片等 * *---相对布局的特有的属性: * layout_xxx(toLeftOf/toRightOf/below/above) 相对于兄弟控件的位置属性 * layout_align(Left/Right/Top/Button) 相对于兄弟控件的对齐属性 * layout_alignParent(Left/Right/Top/Button) 相对于父控件的位置对齐属性 * layout_center(Horizontal/Vertical/InParent) 相对于父控件的居中的属性 * * ---对齐属性: * gravity 指定子控件的重力属性 * layout_gravity 相对母布局的重力属性 * padding(Left/Right/Top/Button/Start/End) 向内挤压子控件 * layout_margin(Left/Right/Top/Button/Start/End) 向外挤压母控件(布局) * * ---其他属性: * tag 另一个标示,类似id * onClick/visibility/alpha/ * *-描述--S2.padding/layout_margin Start/End API17开始支持,推荐Start/End. *-描述--S3.注意各控件之间的相互影响或冲突关系,否则布局的结果不符合预期, * 如当一个子控件位置与另一个冲突时,结果位置就会变得很混乱,因为子控件的位置都是相对的. *-描述--None. *---------------------------------------------------------------------------*/ /*---------------------------------------- *-描述--FrameLayout的几点总结. *-描述--S1.帧布局的几个重要属性: * ---基本属性: * id 标识,唯一标识 * layout_width 宽,布局/控件的宽度 * layout_height 高,布局/控件的高度 * background 设置背景,可设置为颜色或图片等 * *---帧布局的特有的属性: * foreground 设置前景,可设置为颜色或图片等 * foregroundGravity 设置前景重力属性 * * ---对齐属性: * layout_gravity 相对母布局的重力属性 * padding(Left/Right/Top/Button/Start/End) 向内挤压子控件 * layout_margin(Left/Right/Top/Button/Start/End) 向外挤压母控件(布局) * * ---其他属性: * tag 另一个标示,类似id * onClick/visibility/alpha/ * *-描述--S2.padding/layout_margin Start/End API17开始支持,推荐Start/End. *-描述--S3.每个属性指定指定一次,多个值可以用|(或)连接起来. *-描述--S4.帧布局子控件是按层堆叠在一个容器上的,因此各子控件之间的位置不会有冲突 * 可以实现控件的堆叠的布局 *-描述--S5.帧布局叠放属性按LAYOUT里面的顺序添加,后面放入的控件堆叠在前面的控件上. *-描述--None. *---------------------------------------------------------------------------*/ /*---------------------------------------- *-描述--GridLayout的几点总结. *-描述--S1.网格布局的几个重要属性: * ---基本属性: * id 标识,唯一标识 * layout_width 宽,布局/控件的宽度 * layout_height 高,布局/控件的高度 * background 设置背景,可设置为颜色或图片等 * *---网格布局的特有的属性: * rowCount 表格行数 * columnCount 表格列数 * layout_columnSpan 单元格跨了多少列(结合layout_gravity属性使用) * layout_rowSpan 单元格跨了多少行(结合layout_gravity属性使用) * layout_column 单元格所在列 * layout_row 单元格所在行 * * ---对齐属性: * layout_gravity 相对母布局的重力属性 * padding(Left/Right/Top/Button/Start/End) 向内挤压子控件 * layout_margin(Left/Right/Top/Button/Start/End) 向外挤压母控件(布局) * * ---其他属性: * tag 另一个标示,类似id * onClick/visibility/alpha/ * *-描述--S2.padding/layout_margin Start/End API17开始支持,推荐Start/End. *-描述--S3.注意各控件之间的相互影响或冲突关系,否则布局的结果不符合预期 * 新建单元格不能跨过空单元格,否则不符合预期 *-描述--S4.带layout_的属性是相对母控件的属性,不带的则是指定(相对)子控件的属性 *-描述--None. *---------------------------------------------------------------------------*/
时间: 2024-11-06 17:52:44