您的位置:首页 > 产品设计 > UI/UE

Android UI(Layouts)-LinearLayout 详解

2016-05-29 11:36 232 查看
1.LinearLayout是什么?
1)view
2)ViewGroup (容器,可以添加其它子元素)

3)ViewGroup 中的线性容器(布局)

2.LinearLayout 应用场合?
1)布局方式比较简单(横向或者纵向)
2)外层布局是线性方式时。
3.LinearLayout 的应用?

1)布局特点(纵向或横向)【水平的horizontal】【垂直的vertical】

2)常用属性(熟练掌握)

android:orientation(布局方式,默认水平) 线性布局以列或行来显示内部子元素

android:layout_gravity(布局对齐方式) 本元素相对于父元素的重力方向

android:gravity 本元素中所有子元素的重力方向

android:layout_weight 子元素对未占用空间水平或垂直分配权重值

当 android:orientation="vertical"  时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。

即android:layout_gravity:left,right,center_horizontal 是生效的。垂直布局(左,中,右)

当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。

即android:layout_gravity:top,bottom,center_vertical 是生效的。水平布局(上,中,下)

android:layout_gravity 和 android:gravity 的区别:

android:gravity 对元素本身起作用-本身元素显示在什么位置。

android:layout_gravity 相对于它的父元素,本元素显示在父元素的什么位置。
例如:Button控件

android:layout_gravity 表示button在界面上的位置。

android:gravity 表示button上的文字在button上的位置。
可选值[多选时用“|”分开] 

top、bottom、left、right、center_vertical、center_horizontal、center、

fill_vertical、fill_horizontal、fill、clip_vertical。

top 将对象放在其容器的顶部,不改变其大小. 

bottom 将对象放在其容器的底部,不改变其大小. 

left将对象放在其容器的左侧,不改变其大小. 

right将对象放在其容器的右侧,不改变其大小. 

center_vertical 将对象纵向居中,不改变其大小.  

center_horizontal 将对象横向居中,不改变其大小.

center 将对象横纵居中,不改变其大小. 

fill_vertical 必要的时候增加对象的纵向大小,以完全充满其容器-垂直方向填充 

fill_horizontal 必要的时候增加对象的横向大小,以完全充满其容器-水平方向填充 

fill 必要的时候增加对象的横纵向大小,以完全充满其容器. 

clip_vertical 附加选项,用于按照容器的边来剪切对象的顶部和/或底部的内容. 剪切基于其纵向对齐设置:

顶部对齐时,剪切底部;底部对齐时剪切顶部;除此之外剪切顶部和底部.垂直方向裁剪

clip_horizontal 附加选项,用于按照容器的边来剪切对象的左侧和/或右侧的内容. 剪切基于其横向对齐设置:

左侧对齐时,剪切右侧;右侧对齐时剪切左侧;除此之外剪切左侧和右侧.水平方向裁剪

layout_weight的公式:
控件的宽度(高度)=控件的width(height)值+(该控件的weight值/所有控件的weight的和)×额外的空间
额外的空间=手机的宽度(高度)-所有控件的宽度(高度)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: