linearlayout是什么布局

时间:2021-05-18

linearlayout是线性布局,线性肯定是具有横竖两种方向的,水平和垂直。需要注意的是android:orientation="vertical",子View使用layout_gravity在垂直方向上的设定无效;android:orientation="horizontal",子View使用layout_gravity在水平方向上的设定无效。

  在 LinearLayout 中有垂直/水平两个方向的布局,任一方向的布局思想都是相同的,所以我们只需要具体分析其中一个方向即可,另一个方向可以类比,在View 和 ViewGroup 中的布局有三大流程,分别是 onMeasure、onLayout 和 onDraw,在 LinearLayout 中 onLayout 和 onDraw 两个流程基本都是模板化的写法,而且 LinearLayout 布局简单,无论是垂直方向还是水平方向都是依次排列每个 childView 的,分析起来并不复杂,大家可以自行分析。但是 onMeasure 流程就比较复杂,分为两种情况:不使用 layout_weight 属性,每个 childView 按照自身的情况计算本身的大小即可。使用 layout_weight 属性,需要根据 LinearLayout 的剩余空间和 layout_weight 的比例,计算每个 childView 的大小。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章