解决方案 »

  1.   

    layoutweight相当于把剩余屏幕的面积,按照比例分配给当这个控件,你所有控件都是有默认的高度的,当屏幕被铺满,剩余空间相当于负数,所以weight越大,分配给他的负高度越大,它的高度就会被越小。
    如果你想要让控件的高度按照weight的值按比例分配,应该把所有控件的android.layout_height="match_parent"改成android.layout_height="0dp",这样所有控件的高度都会按照weight数值的比例正分配。
      

  2.   

    1.在LinearLayout内的子控件,如果设为wrap_content且各自需要的长度没有超过按比例分得的长度,那就按比例显示
    2.如果设为0dp,则严格根据weight分配的比例,内容超过后自动换行
    3.按比例显示LinearLayout内各个子控件,需设置android:layout_width="0dp",如果为竖直方向的设置android:layout_height="0dp"。在这种情况下某子个控件占用LinearLayout的比例为:本控件weight值 / LinearLayout内所有控件的weight值的和。
      

  3.   

    是这样的,如图一个布局中有两个控件,layout_weight都为1的时候,两个平分布局;一个为1一个为2的时候,为1的那个占三分之二,为2的那个占三分之一(数值越小,重要度越高)