嘿,各位未来的Android开发大神们,今天咱们不聊那些花里胡哨的,就来啃一块最基础、也最管用的“硬骨头”——LinearLayout,也就是咱们常说的线性布局。
你可以把它想象成开发世界里的“幼儿园老师”。小朋友们(也就是咱们的各种View控件,如按钮、文本框)想怎么站队,全听它指挥。这位老师的口令只有两个:“横着站!”(horizontal) 或者 “竖着站!”(vertical)。简单吧?但可别小看了这份简单,里面门道深着呢!
一、 “老大哥”的两把刷子:横着走还是竖着走?
LinearLayout的核心属性,也是它唯一的“人生信条”,就是 android:orientation。
vertical(垂直布局):像个严厉的体育委员,让所有子视图像站军姿一样,一个接一个地垂直排列。上一个视图的底部,就是下一个视图的顶部。horizontal(水平布局):像个和蔼的导游,举着小旗子让子视图一个接一个地水平排列。上一个视图的右边,就是下一个视图的左边。
敲黑板,第一个重点来了! 这位“老大哥”有个固执的脾气:一旦方向定了,就别想中途改变。你不能让一个垂直排列的布局里,某两个视图突然并排站。这就好比排队买奶茶,你不能排着排着突然和前面的人并排站,那会被后面的人“唾弃”的(或者直接显示不全,被挤出屏幕)!
所以,当你发现你的布局需要更复杂的嵌套时,别犹豫,该请出别的布局管理器(比如RelativeLayout或者ConstraintLayout)帮忙时,就得请。
二、 “老大哥”的公平秤:layout_weight,一个能让你“吃撑”也能让你“减肥”的神器
如果说 orientation 是LinearLayout的灵魂,那 layout_weight(权重)就是它的“神来之笔”。这玩意儿堪称布局界的“公平秤”,专门负责在有剩余空间时,给子视图们分配地盘。
它的工作原则是:谁的权重大,谁分到的剩余空间就多。
这里有个超级重要的概念,必须用“人话”讲明白:
layout_weight 生效的前提是,你先告诉这个视图:“哥们,我给你划的地盘就这么大,剩下的你看着办”。 怎么告诉呢?就是把它在对应方向上的尺寸设置为 0dp!
- 对于
vertical布局,你要设置android:layout_height=

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



