AndroidDev AndroidDev - 4 months ago 7
Android Question

Table Layout with equal rows height

I have created a TableLayout where I want each row to have the same height, regardless of it's content.
How can I do this?

Here is my code. Each row element get the same width, but the heights are not equal. What am I doing wrong?

<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="@color/grey"
android:padding="1dip" >

<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/grey" >

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:layout_marginTop="2dip"
android:layout_weight="1"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_make"
android:textStyle="bold" />

<TextView
android:id="@+id/carMake"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginLeft="1dip"
android:layout_weight="1"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_detail" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:layout_marginTop="2dip"
android:layout_weight="1"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_model"
android:textStyle="bold" />

<TextView
android:id="@+id/carModel"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_detail" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:layout_marginTop="2dip"
android:layout_weight="1"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_version"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>
</TableRow>

<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="1dip"
android:layout_weight="1"
android:background="@color/grey" >

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:layout_marginTop="2dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:layout_marginTop="2dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_mileage"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:layout_marginTop="2dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_engine_capacity"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>
</TableRow>

<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="1dip"
android:layout_weight="1"
android:background="@color/grey" >

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_engine_type"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_exterior_color"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_city"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>
</TableRow>

<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="1dip"
android:layout_weight="1"
android:background="@color/grey" >

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_transmittion"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_area"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>

<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="5dip"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_registered_city"
android:textStyle="bold" />

<TextView
android:id="@+id/carYear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@color/white"
android:gravity="center_horizontal"
android:text="@string/car_year" />
</LinearLayout>
</TableRow>
</TableLayout>

Answer

You can Change in your TableRow -> LinearLayout

<LinearLayout
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"    
                    android:layout_weight="1"
                    android:background="@color/white"
                    android:orientation="vertical" >
Comments