I want this to work on all screen sizes so I don’t think using padding is the best way to solve this. I can centre everything when it is in vertical but when it is horizontal nothing seems to align…
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation = "horizontal"
android:layout_gravity = "center">
<TableLayout
android:layout_height = "wrap_content"
android:layout_width="wrap_content"
android:gravity = "center"
android:layout_gravity="center_horizontal">
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:textSize="24.5sp"
android:id="@+id/textView1"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginBottom="20dip"
android:text="Bubb"
android:layout_width="wrap_content">
</TextView>
</TableRow>
<TableRow android:baselineAligned="false">
<Button
android:id = "@+id/continue_button"
android:background="@drawable/and_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft = "@dimen/pad_horizontal"
android:paddingRight = "@dimen/pad_horizontal"
android:paddingTop = "@dimen/pad_vertical"
android:paddingBottom = "@dimen/pad_vertical"
android:text = "@string/first_label"
android:layout_margin="@dimen/margin"/>
</TableRow>
<TableRow>
<Button
android:id = "@+id/new_button"
android:text = "@string/second_label"
android:background="@drawable/and_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft = "@dimen/pad_horizontal"
android:paddingRight = "@dimen/pad_horizontal"
android:paddingTop = "@dimen/pad_vertical"
android:paddingBottom = "@dimen/pad_vertical"
android:layout_margin="@dimen/margin"/>
</TableRow>
<TableRow>
<Button
android:id = "@+id/about_button"
android:text = "@string/third_label"
android:background="@drawable/and_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft = "@dimen/pad_horizontal"
android:paddingRight = "@dimen/pad_horizontal"
android:paddingTop = "@dimen/pad_vertical"
android:paddingBottom = "@dimen/pad_vertical"
android:layout_margin="@dimen/margin"/>
</TableRow>
<TableRow>
<Button
android:id = "@+id/exit_button"
android:text = "@string/fourth_label"
android:background="@drawable/and_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft = "@dimen/pad_horizontal"
android:paddingRight = "@dimen/pad_horizontal"
android:paddingTop = "@dimen/pad_vertical"
android:paddingBottom = "@dimen/pad_vertical"
android:layout_margin="@dimen/margin"/>
</TableRow>
</TableLayout>
</LinearLayout>
Any help is great.
It’s not clear from your question precisely how you want your layout to look, but I’m guessing (from your XML, at least) that you are after something like this:
I don’t have your drawables, so can’t include those.
If that’s the case, then this layout does the trick:
EDIT: That aligns in a vertical list when switched to landscape:
If you require a horizonal list, simply copy this layout to “res/layout-land” and change the orientation in the outer LinearLayout to “horizontal” :
and you’ll get this: