layoutweight在什么布局中有,layoutweight 1?

吉云

嘿,小伙伴们!今天咱们来聊聊一个Android布局中经常遇到的老朋友——layout_weight。

你有没有想过,在 LinearLayout 中,怎么才能让多个子 View 平均分配空间呢?或者你想让某些子 View 比其他子 View 更大,占有更多的空间?这就是 layout_weight 发挥作用的地方啦!

layoutweight在什么布局中有,layoutweight 1?

简单来说,layout_weight 就是用来控制子 View 在 LinearLayout 中所占比例的属性。就像你跟小伙伴一起瓜分蛋糕,layout_weight 就相当于分配蛋糕的比例。谁的 layout_weight 值更大,谁就分到的蛋糕更多。

举个栗子:

假设你有一个水平方向的 LinearLayout,里面有两个 TextView。你想让第一个 TextView 占 2/3 的空间,第二个 TextView 占 1/3 的空间。

那你就需要给这两个 TextView 设置 layout_weight 属性,第一个 TextView 的 layout_weight 设置为 2,第二个 TextView 的 layout_weight 设置为 1。这样,第一个 TextView 就会占据更大的空间,而第二个 TextView 就会相对较小。

注意啦!

layout_weight 只能在 LinearLayout 中使用,其他布局方式比如 RelativeLayout、ConstraintLayout 等等,就用不上它啦!

当你设置了 layout_weight 之后,子 View 的 layout_width 或者 layout_height 属性要设置为 0dp,因为你需要让 layout_weight 来决定子 View 的大小,而不是 layout_width 或 layout_height。

表格时间!

属性 解释
layout_weight 子 View 在 LinearLayout 中所占的比例,默认为 0
layout_width 子 View 的宽度,如果设置了 layout_weight,则需要设置为 0dp
layout_height 子 View 的高度,如果设置了 layout_weight,则需要设置为 0dp

我还要补充一句:

layout_weight 虽然好用,但也要注意使用场景。如果你的布局比较复杂,或者需要精确控制子 View 的大小,就需要考虑使用其他布局方式,或者使用 ConstraintLayout 来实现更灵活的布局。

现在,你对 layout_weight 有更深的理解了吗?快去尝试一下,看看你能做出什么有趣的效果吧!

想问问你,在你的开发过程中,都遇到过哪些关于 layout_weight 的问题呢?欢迎留言分享你的经验!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]