Reputation: 3
I'm creating a calculator to learn the basics of programming using Android Studio. In my creation of a very basic RelativeLayout for the standard calculator screen the first button on the screen has text out of alignment from all the other buttons. (It is even on other screens such as the scientific and programming activities) Why would one single button just display the text out of alignment? Note its the same on the physical phone as it is in the simulator phone screen so its not some type of simulator / actual hardware difference. I drew a line on the image to better show the alignment difference example. Also tried Gravity="Center" and it does not change the text alignment.
Button
android:id="@+id/stnd_btn_mc"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_below="@+id/mytextView"
android:onClick="stnd_btn_memory"
android:paddingTop="0dp"
android:gravity="center"
android:text="MC" />
<Button
android:id="@+id/stnd_btn_mr"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignBaseline="@+id/stnd_btn_mc"
android:layout_alignBottom="@+id/stnd_btn_mc"
android:layout_alignLeft="@+id/stnd_btn_sqrt"
android:layout_toEndOf="@+id/stnd_btn_mc"
android:layout_toRightOf="@+id/stnd_btn_mc"
android:onClick="stnd_btn_memory"
android:text="MR" />
<Button
android:id="@+id/stnd_btn_mplus"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignBaseline="@+id/stnd_btn_mc"
android:layout_alignBottom="@+id/stnd_btn_mc"
android:layout_alignLeft="@+id/stnd_btn_exp"
android:layout_toRightOf="@+id/stnd_btn_mr"
android:onClick="stnd_btn_memory"
android:text="M+" />
<Button
android:id="@+id/stnd_btn_Memoryminus"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignBaseline="@+id/stnd_btn_mc"
android:layout_alignBottom="@+id/stnd_btn_mc"
android:layout_alignLeft="@+id/stnd_btn_overx"
android:layout_toEndOf="@+id/stnd_btn_mplus"
android:layout_toRightOf="@+id/stnd_btn_mplus"
android:onClick="stnd_btn_memory"
android:text="M-" />
This is the XML to the whole page as requested. Thank you.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/content_standard"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.robertgenthner.standardactivity.StandardActivity"
tools:showIn="@layout/app_bar_standard">
<TextView
android:id="@+id/mytextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:gravity="right"
android:text="0.00"
android:textSize="40dp"
android:textStyle="bold" />
<!--FIRST ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_mc"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_below="@+id/mytextView"
android:onClick="stnd_btn_memory"
android:gravity="center"
android:text="MC" />
<Button
android:id="@+id/stnd_btn_mr"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignBaseline="@+id/stnd_btn_mc"
android:layout_alignBottom="@+id/stnd_btn_mc"
android:layout_alignLeft="@+id/stnd_btn_sqrt"
android:layout_toEndOf="@+id/stnd_btn_mc"
android:layout_toRightOf="@+id/stnd_btn_mc"
android:onClick="stnd_btn_memory"
android:text="MR" />
<Button
android:id="@+id/stnd_btn_mplus"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignBaseline="@+id/stnd_btn_mc"
android:layout_alignBottom="@+id/stnd_btn_mc"
android:layout_alignLeft="@+id/stnd_btn_exp"
android:layout_toRightOf="@+id/stnd_btn_mr"
android:onClick="stnd_btn_memory"
android:text="M+" />
<Button
android:id="@+id/stnd_btn_Memoryminus"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignBaseline="@+id/stnd_btn_mc"
android:layout_alignBottom="@+id/stnd_btn_mc"
android:layout_alignLeft="@+id/stnd_btn_overx"
android:layout_toEndOf="@+id/stnd_btn_mplus"
android:layout_toRightOf="@+id/stnd_btn_mplus"
android:onClick="stnd_btn_memory"
android:text="M-" />
<!--FIRST ROW OF BUTTONS END-->
<!--SECOND ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_percent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/stnd_btn_mr"
android:layout_marginTop="10dp"
android:onClick="stnd_btn_functions"
android:text="%" />
<Button
android:id="@+id/stnd_btn_sqrt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_percent"
android:layout_toEndOf="@+id/stnd_btn_percent"
android:layout_toRightOf="@+id/stnd_btn_percent"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="√" />
<Button
android:id="@+id/stnd_btn_exp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/stnd_btn_sqrt"
android:layout_toEndOf="@+id/stnd_btn_sqrt"
android:layout_toRightOf="@+id/stnd_btn_sqrt"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="X^2" />
<Button
android:id="@+id/stnd_btn_overx"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_exp"
android:layout_toEndOf="@+id/stnd_btn_exp"
android:layout_toRightOf="@+id/stnd_btn_exp"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="1/X" />
<!--SECOND ROW OF BUTTONS END-->
<!--THIRD ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_ce"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/stnd_btn_percent"
android:layout_marginTop="10dp"
android:onClick="stnd_btn_functions"
android:text="CE" />
<Button
android:id="@+id/stnd_btn_c"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/stnd_btn_ce"
android:layout_alignBottom="@+id/stnd_btn_ce"
android:layout_toEndOf="@+id/stnd_btn_ce"
android:layout_toRightOf="@+id/stnd_btn_ce"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="C" />
<Button
android:id="@+id/stnd_btn_bksp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/stnd_btn_c"
android:layout_toEndOf="@+id/stnd_btn_c"
android:layout_toRightOf="@+id/stnd_btn_c"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="bksp" />
<Button
android:id="@+id/stnd_btn_divide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_bksp"
android:layout_toEndOf="@+id/stnd_btn_bksp"
android:layout_toRightOf="@+id/stnd_btn_bksp"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="÷" />
<Button
android:id="@+id/stnd_btn_7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/stnd_btn_bksp"
android:layout_marginTop="10dp"
android:onClick="stnd_btn_numbers"
android:text="7" />
<!--THIRD ROW OF BUTTONS END-->
<!--FORTH ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_7"
android:layout_toEndOf="@+id/stnd_btn_7"
android:layout_toRightOf="@+id/stnd_btn_7"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="8" />
<Button
android:id="@+id/stnd_btn_9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/stnd_btn_8"
android:layout_toEndOf="@+id/stnd_btn_8"
android:layout_toRightOf="@+id/stnd_btn_8"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="9" />
<Button
android:id="@+id/stnd_btn_multiply"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_9"
android:layout_toEndOf="@+id/stnd_btn_9"
android:layout_toRightOf="@+id/stnd_btn_9"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="X" />
<Button
android:id="@+id/stnd_btn_4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/stnd_btn_7"
android:layout_marginTop="10dp"
android:onClick="stnd_btn_numbers"
android:text="4" />
<!--FORTH ROW OF BUTTONS END-->
<!--FIFTH ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_4"
android:layout_toEndOf="@+id/stnd_btn_4"
android:layout_toRightOf="@+id/stnd_btn_4"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="5" />
<Button
android:id="@+id/stnd_btn_6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/stnd_btn_5"
android:layout_toEndOf="@+id/stnd_btn_5"
android:layout_toRightOf="@+id/stnd_btn_5"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="6" />
<Button
android:id="@+id/stnd_btn_minus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_6"
android:layout_toEndOf="@+id/stnd_btn_6"
android:layout_toRightOf="@+id/stnd_btn_6"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="-" />
<!--FIFTH ROW OF BUTTONS END-->
<!--SIXTH ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/stnd_btn_4"
android:layout_marginTop="10dp"
android:onClick="stnd_btn_numbers"
android:text="1" />
<Button
android:id="@+id/stnd_btn_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_1"
android:layout_toEndOf="@+id/stnd_btn_1"
android:layout_toRightOf="@+id/stnd_btn_1"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="2" />
<Button
android:id="@+id/stnd_btn_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/stnd_btn_2"
android:layout_toEndOf="@+id/stnd_btn_2"
android:layout_toRightOf="@+id/stnd_btn_2"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="3" />
<Button
android:id="@+id/stnd_btn_plus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_3"
android:layout_toEndOf="@+id/stnd_btn_3"
android:layout_toRightOf="@+id/stnd_btn_3"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="+" />
<!--SIXTH ROW OF BUTTONS END-->
<!--SEVENTH ROW OF BUTTONS START-->
<Button
android:id="@+id/stnd_btn_posneg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/stnd_btn_1"
android:layout_marginTop="10dp"
android:onClick="stnd_btn_functions"
android:text="±" />
<Button
android:id="@+id/stnd_btn_0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_posneg"
android:layout_toEndOf="@+id/stnd_btn_posneg"
android:layout_toRightOf="@+id/stnd_btn_posneg"
android:onClick="stnd_btn_numbers"
android:paddingLeft="10dp"
android:text="0" />
<Button
android:id="@+id/stnd_btn_period"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/stnd_btn_0"
android:layout_toEndOf="@+id/stnd_btn_0"
android:layout_toRightOf="@+id/stnd_btn_0"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="." />
<Button
android:id="@+id/stnd_btn_equal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/stnd_btn_period"
android:layout_toEndOf="@+id/stnd_btn_period"
android:layout_toRightOf="@+id/stnd_btn_period"
android:onClick="stnd_btn_functions"
android:paddingLeft="10dp"
android:text="=" />
</RelativeLayout>
Upvotes: 0
Views: 403
Reputation: 1452
If you remove the paddingTop from the first button the text should line up
Edit:
To tidy up the code you could also try to use a Grid layout (Saves having to align everything manually)
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_column="4">
<Button
android:id="@+id/stnd_btn_mc"
android:layout_width="60dp"
android:layout_height="60dp"
android:onClick="stnd_btn_memory"
android:text="MC" />
<Button
android:id="@+id/stnd_btn_mr"
android:layout_width="60dp"
android:layout_height="60dp"
android:onClick="stnd_btn_memory"
android:text="MR" />
<Button
android:id="@+id/stnd_btn_mplus"
android:layout_width="60dp"
android:layout_height="60dp"
android:onClick="stnd_btn_memory"
android:text="M+" />
<Button
android:id="@+id/stnd_btn_Memoryminus"
android:layout_width="60dp"
android:layout_height="60dp"
android:onClick="stnd_btn_memory"
android:text="M-" />
</GridLayout>
Upvotes: 2