Android布局基础知识:wrap_content,match_parent,layout_weight

编程知识 更新时间:2023-04-05 06:46:40

wrap_content:是layout_width和layout_height的属性值之一,表示和自身内容一样的长度。

match_parent:是layout_width和layout_height的属性值之一,表示和父组件一样的长度。

layout_weight:是布局文件的一个属性,它的值表示线性分割原本应有长度的权重,要和wrap_content和match_parent配合使用,不同情况列举如下:

和wrap_content配合:先按照内容的多少去设定空间大小,然后按照权重的比例分配剩余控件。即当控件没有内容或内容未超出按照权重比例分配的空间时,就按照layout_weight设定的权重比例分配空间,当内容大小超过这样分配的空间时,控件就会扩张,其实就是按照wrap_content来占用空间了,剩下的空间仍然按照本段定理来分配。

和match_parent配合:空间计算公式:空间大小=父容器大小+权重比例*剩余空间大小,比如两个同级控件A,B都是match_parent,A的layout_weight为1,B的layout_weight为2(总空间为1match_parent,所需空间为2match_parent,剩余空间为两者之差),空间A=1match_parent+1/(1+2)*(1match_parent-2match_parent)=2/3match_parent,同理,空间B=1/3match_parent。这个现象和正常情况有些相反,但是可以有效保证空间分配到的比例固定,不会被内容撑大。

和0dp配合:将layout_weight或者layout_height设为0dp,将直接按照layout_weight权重的比例分配空间,且不会被内容撑大。

更多推荐

Android布局基础知识:wrap_content,match_parent,layout_weight

本文发布于:2023-04-05 06:46:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/7154d5753080034749b8739b7839e739.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:基础知识   布局   Android   layout_weight   match_parent

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 45360文章数
  • 14阅读数
  • 0评论数