Android开发技巧之使用weight属性实现控件的按比例分配空间

从今天开始,把看书时候的知识点整理成博客,

这个比较简单,估计有经验的都用过,weight属性

 

在做Android布局的时候,经常遇到需要几个控件按比例分配空间的情况

比如下图效果

在底部设置两个button,占据底部宽度一部分的同时,保持1:3的比例,

当然了,这么难看的布局用处不大,仅是用来说明weight的用法

布局代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:weightSum="6"
    android:gravity="bottom|center_horizontal" >

    <Button
        android:id="@+id/bn_main_left"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="left" />

    <Button
        android:id="@+id/bn_main_right"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="3"
        android:text="right" />

</LinearLayout>


其中LinearLayout里面有个weightSum,这个属性是用来设置LinearLayout的weight总和,

Button里面的layout_weight就是用来设置button占据LinearLayout的空间的大小

 

形象一点说,LinearLayout像一个盒子,weightSum设置了盒子的大小为6,

往盒子里放了两个button,给左边button设置layout_weight="1",占据1/6空间,

右边button设置了layout_weight="3",占据3/6空间

这样两个button加起来占据了LinearLayout的4/6,

 

如果没有给LinearLayout设置weightSum的话,则默认为所有控件layout_weight的总和.

 

作者:jason0539

微博:http://weibo.com/2553717707

博客:http://blog.csdn.net/jason0539(转载请说明出处)

Android开发技巧之使用weight属性实现控件的按比例分配空间,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。