Reputation: 3183
I want to display values in listview where all 5 values of row should take equal width and height over all dimensions Here is my list_view.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@id/tabsLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="12.0dip"
android:background="@color/transparent"
android:orientation="horizontal">
<TextView
android:id="@+id/text1"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_marginBottom="5.0dip"
android:layout_marginLeft="20dp"
android:layout_marginTop="5.0dip"
android:layout_weight="1"
android:gravity="center"
android:textColor="#FFFFFF"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@id/text2"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:layout_weight="1"
android:gravity="center"
android:textColor="#FFFFFF"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@id/text3"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:layout_weight="1"
android:gravity="center"
android:textColor="#FFFFFF"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@id/text4"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:layout_weight="1"
android:gravity="center"
android:textColor="#FFFFFF"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@id/text5"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_marginBottom="5.0dip"
android:layout_marginRight="20dp"
android:layout_marginTop="5.0dip"
android:layout_weight="1"
android:gravity="center"
android:textColor="#FFFFFF"
android:textSize="8.0dip"
android:textStyle="bold" />
</LinearLayout>
But it is not equally distributing horizontally. In preview it is showing 5 rectangular textview but when it comes in listview values over textview will become auto fit so that textview getting shrink.
Upvotes: 2
Views: 2899
Reputation: 696
Try adding weightSum to linearLayout:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/tabsLayout"
android:layout_marginTop="12.0dip"
android:orientation="horizontal"
android:weightSum="5">
Upvotes: 2
Reputation: 7390
layout weight should work, try removing gravity attribute for your Textview. if still not working, play with weightSum, set weightSum for your LinearLayout and distribute that to TextViews
ex :
<LinearLayout
...
...
android:weightSum="5">
<TextView
..
..
android:layout_weight="1"/>
<TextView
..
..
android:layout_weight="1"/>
<TextView
..
..
android:layout_weight="1"/>
<TextView
..
..
android:layout_weight="1"/>
<TextView
..
..
android:layout_weight="1"/>
</LinearLayout>
this might work.
Upvotes: 1
Reputation: 20513
You should set layout_weight="0.20"
for every TextView
, meaning every TextView
will take 20% of space.
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/tabsLayout"
android:layout_marginTop="12.0dip"
android:orientation="horizontal">
<TextView
android:id="@+id/text1"
android:text="EEEEEEEE"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_weight="0.20"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:gravity="center"
android:textColor="#000000"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@+id/text2"
android:text="DDDDDDDDD"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_weight="0.20"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:gravity="center"
android:textColor="#000000"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@+id/text3"
android:text="CCCCCCCCCC"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_weight="0.20"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:gravity="center"
android:textColor="#000000"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@+id/text4"
android:text="BBBBBBBBBBB"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_weight="0.20"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:gravity="center"
android:textColor="#000000"
android:textSize="8.0dip"
android:textStyle="bold" />
<TextView
android:id="@+id/text5"
android:text="AAAAAAAAAA"
android:layout_width="0dp"
android:layout_height="40.0dip"
android:layout_weight="0.20"
android:layout_marginBottom="5.0dip"
android:layout_marginTop="5.0dip"
android:gravity="center"
android:textColor="#000000"
android:textSize="8.0dip"
android:textStyle="bold" />
</LinearLayout>
Upvotes: 4