How to fill the screen with four buttons using a table?

I have the following layout

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:id="@+id/relativeLayout1" android:layout_height="fill_parent"> <TableLayout android:id="@+id/TableLayout01" android:stretchColumns="*" android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_centerInParent="true" > <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" android:layout_height="wrap_content"> <Button android:id="@+id/syncDownload" android:layout_margin="5dp" android:layout_weight="1" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="Download1" android:textColor="#EDFF99" android:textStyle="bold" android:background="@drawable/custom_button" /> <Button android:id="@+id/branchesButton" android:layout_weight="1" android:layout_margin="5dp" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Download2" android:textColor="#EDFF99" android:textStyle="bold" android:background="@drawable/custom_button" /> </TableRow> <TableRow android:id="@+id/TableRow02" android:layout_width="fill_parent" android:layout_height="wrap_content"> <Button android:id="@+id/attendanceButton" android:layout_weight="1" android:layout_margin="5dp" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Upload1" android:textColor="#EDFF99" android:textStyle="bold" android:background="@drawable/custom_button" /> <Button android:id="@+id/syncUpload" android:layout_margin="5dp" android:layout_weight="1" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Upload2" android:textColor="#EDFF99" android:textStyle="bold" android:background="@drawable/custom_button" /> </TableRow> </TableLayout> </RelativeLayout> 

which come out

enter image description here

How can I stretch four buttons to fill the entire screen?

+4
source share
2 answers

You do not need a TableLayout :

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_height="0dp" android:layout_width="match_parent" android:layout_weight="1" android:orientation="horizontal"> <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" ... /> <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" ... /> </LinearLayout> <LinearLayout android:layout_height="0dp" android:layout_width="match_parent" android:layout_weight="1" android:orientation="horizontal"> <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" ... /> <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" ... /> </LinearLayout> </LinearLayout> 
+15
source

Change the height of the TableLayout to fill_parent using android:layout_height="fill_parent"

Change each TableRow height to 0px using android:layout_height="0px"

and set each weight to 1 using android:layout_weight="1"

Finally, remember to set the height of the Button to fill_parent

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TableLayout android:id="@+id/TableLayout01" android:stretchColumns="*" android:layout_height="fill_parent" android:layout_width="fill_parent" android:layout_centerInParent="true" > <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" android:layout_height="0px" android:layout_weight="1" > <Button android:layout_margin="5dp" android:layout_weight="1" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="Download1" android:textColor="#EDFF99" android:textStyle="bold" /> <Button android:layout_weight="1" android:layout_margin="5dp" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="Download2" android:textColor="#EDFF99" android:textStyle="bold" /> </TableRow> <TableRow android:layout_width="fill_parent" android:layout_height="0px" android:layout_weight="1" > <Button android:layout_weight="1" android:layout_margin="5dp" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="Upload1" android:textColor="#EDFF99" android:textStyle="bold"/> <Button android:layout_margin="5dp" android:layout_weight="1" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="Upload2" android:textColor="#EDFF99" android:textStyle="bold"/> </TableRow> </TableLayout> </RelativeLayout> 
+2
source

Source: https://habr.com/ru/post/1368943/


All Articles