Search code examples
androidxml

Centering of text inside a button in android


I have looked through stackoverflow and have seen some ppl have issues with centering text inside a button. I have tried gravity, center, textAlignment, etc.. but so far nothing has worked. Does anyone have any ideas on how I can fix this? Thanks

This button is basically an button with a minus or - symbol in it but it won't put the - sign in the center. I have tried this with + as well but no luck. Any help is appreciated.

I can get the button to center the text but I have to use wrap_content for width and height. I do not want a button that big however. Would like it 40dp by 40dp

<Button
            android:id="@+id/button_minusMin"
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:layout_below="@+id/edit_minute"
            android:layout_marginLeft="55dp"
            android:background="@drawable/button1"
            android:text="@string/button_minusMin"
            android:textAlignment="gravity"
            android:textColor="#FFFFFF"
            android:textSize="30sp"
            android:textStyle="bold" />

This is my button1 xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item><layer-list>
        <item android:right="5dp" android:top="5dp"><shape>
                <corners android:radius="3dp" />

                <solid android:color="#000000" />
            </shape></item>
        <item android:bottom="2dp" android:left="2dp"><shape>
                <gradient android:angle="270" android:endColor="#000000" android:startColor="#F06F14" />

                <stroke android:width="1dp" android:color="#BABABA" />

                <corners android:radius="4dp" />

                <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />
            </shape></item>
    </layer-list></item>

I have tried the following which works but wanted to have shading which is why I used button1.xml Is something in my button1.xml throwing things off?

<Button
            android:id="@+id/button_minusSets"
            android:layout_width="35dp"
            android:layout_height="40dp"
            android:layout_below="@+id/edit_sets"
            android:layout_marginLeft="55dp"
            android:background="#F06F14"
            android:text="@string/button_minusSets"
            android:textColor="#FFFFFF"
            android:textSize="30sp"
            android:textStyle="bold" />

Solution

  • Did you try adding android:gravity="center" to your Button ?

    Edit 1 : Adding Button XML

    <Button
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:background="@drawable/button_drawable"
        android:gravity="center"
        android:text="+" >
    </Button>