Skip to content Skip to sidebar Skip to footer

Difference Between Android:collapsecolumns And Android:shrinkcolumns Of Tablelayout

I am new in android development. I was reading TableLayout, Which have three major attributes android:stretchColumns, android:collapseColumns & android:shrinkColumns. After

Solution 1:

  • android:stretchColumns

    The zero-based index of the columns to stretch. The column indices must be separated by a comma: 1, 2, 5. Illegal and duplicate indices are ignored. You can stretch all columns by using the value "*" instead. Note that a column can be marked stretchable and shrinkable at the same time.

  • android:shrinkColumns

    The zero-based index of the columns to shrink. The column indices must be separated by a comma: 1, 2, 5. Illegal and duplicate indices are ignored. You can shrink all columns by using the value "*" instead. Note that a column can be marked stretchable and shrinkable at the same time.

  • android:collapseColumns

    The zero-based index of the columns to collapse. The column indices must be separated by a comma: 1, 2, 5. Illegal and duplicate indices are ignored.

    <TableLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="wrap_content"android:stretchColumns="*"android:background="@color/grey"><TableRow><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_column="0"android:background="@color/red"android:textColor="@android:color/white"android:textSize="30dp"android:text="0" /><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_column="1"android:textColor="@android:color/white"android:textSize="30dp"android:background="@color/green"android:text="1" /><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_column="2"android:textColor="@android:color/white"android:textSize="30dp"android:background="@color/blue"android:text="2" /></TableRow><TableRow><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_column="0"android:background="@color/red"android:textColor="@android:color/white"android:textSize="30dp"android:text="0" /><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_column="1"android:textColor="@android:color/white"android:textSize="30dp"android:background="@color/green"android:text="1" /><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_column="2"android:textColor="@android:color/white"android:textSize="30dp"android:background="@color/blue"android:text="2" /></TableRow></TableLayout>

Explanations:

android:stretchColumns="*"

enter image description here

Means it stretch all columns equally according table layout width

android:shrinkColumns="*"

enter image description here

Means it shrink all columns

android:shrinkColumns="0,2"

android:stretchColumns="1"

enter image description here

Means column 0 and 2 are wrap contain and column 1 stretch into available width

android:stretchColumns="0,1,2"

android:shrinkColumns="1"

enter image description here

Means if column already stretch then shrink not apply

android:shrinkColumns="*"

android:collapseColumns="1"

enter image description here

android:collapseColumns means it hide given column

android:stretchColumns="*"

TextView :- android:layout_column="2"

enter image description here

Meanning if tablerow first column layout parameter not start with 0 then empty view added into row

android:stretchColumns="*"

android:collapseColumns="1"

TextView :- android:layout_column="2"

enter image description here

Means if tablerow first column layout parameter not start with 0 then empty view added into row but if you collapse column then added empty view not hide of that column index only hide added view by explicit view

Solution 2:

Shrinking Columns

We can shrink or reduce the width of the column(s) using the android:shrinkColumns attribute in the TableLayout. We can specify either a single column or a comma delimited list of column numbers for this attribute. The content in the specified columns word-wraps to reduce their width.

Collapsing Columns

We can make the column(s) collapse or become invisible through the android:collapseColumns attribute in the TableLayout. We can specify one or more comma-delimited columns for this attribute. These columns are part of the table information but are invisible. We can also make column(s) visible and invisible through coding by passing the Boolean values false and true, respectively, to the setColumnCollapsed() method in the TableLayout

Post a Comment for "Difference Between Android:collapsecolumns And Android:shrinkcolumns Of Tablelayout"