android学习心得02-线性布局的权重

<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:orientation="vertical"
    tools:context=".MainActivity" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal" >
        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="123" 
            android:background="#0000ff"/>
        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="123"
             android:background="#ff0000" />
        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="123"
             android:background="#00ffff" />
        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="123"
             android:background="#ffff00" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="vertical" >
        <TextView
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="123"
             android:background="#ffff00" />
        <TextView
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="123" 
             android:background="#ff0000"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="123"
             android:background="#0000ff" />
        <TextView
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="123" 
             android:background="#00ffff"/>
    </LinearLayout>
</LinearLayout>

android学习心得02-线性布局的权重_第1张图片

这是上面代码的布局样式,在线性布局中,权重是按比例分配各个VIEW的宽或者高,android:layout_weight="1"的意思在view分配了本身的宽或者高,剩余多余的空间,再按照权重的比例进行分配,假设view A和view B的宽是100dp和50dp,屏幕宽度是300dp,权重都是1,那么A的宽度是100dp+(300-100-50)/2,B的宽度是50dp+(300-100-50)/2;权重比例是根据线性布局的方向来定怎么分配宽度(水平方向)或者高度(垂直方向)

你可能感兴趣的:(android学习心得02-线性布局的权重)