Как уменьшить внутреннюю прописку вокруг текста в объекте кнопки Android?

Примеры кнопок

Итак, на данный момент у меня есть кнопка, которая выглядит как первое изображение выше. Как уменьшить прописку вокруг текста внутри самой кнопки (чтобы больше походить на второе изображение)?

Ширина и высота макета задаются как:

android:layout_width="match_parent" android:layout_height="wrap_content" 

Форма пользовательского стиля имеет параметры "

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> 

Остальное – только атрибуты цвета и радиусы.

Чтобы яснить, я хочу, чтобы рамка кнопки обнимала текст «Войти».

Вся помощь и отзывы очень приветствуются. Благодарю.

Solutions Collecting From Web of "Как уменьшить внутреннюю прописку вокруг текста в объекте кнопки Android?"

Мне потребовалось много времени, чтобы найти это, но «отступы» вокруг текста в кнопке совсем не заполняются. По умолчанию стиль Widget.Button включает свойство minHeight. Изменение minHeight на кнопке позволит вам отрегулировать отступы, как ожидалось.

 <Button android:id="@+id/header" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/test" android:textColor="@color/black" android:minHeight="40dip"/> <style name="Widget.Holo.Button" parent="Widget.Button"> <item name="android:background">@android:drawable/btn_default_holo_dark</item> <item name="android:textAppearance">?android:attr/textAppearanceMedium</item> <item name="android:textColor">@android:color/primary_text_holo_dark</item> <item name="android:minHeight">48dip</item> <item name="android:minWidth">64dip</item> </style> 

Попробуйте это в своем пользовательском файле shape.xml

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:paddingLeft="10dp" android:paddingRight="10dp" android:paddingTop="1dp" android:padding="1dp"> 1 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:paddingLeft="10dp" android:paddingRight="10dp" android:paddingTop="1dp" android:padding="1dp"> 

Также вы можете внести изменения в xml

 android:layout_width="wrap_content" android:layout_height="wrap_content" 

Это помогло мне – https://stackoverflow.com/a/19227057/3325759 (автор – @StinePike) Из ответа – Добавить android:includeFontPadding="false"

Если вы хотите иметь меньшую верхнюю и нижнюю прокладки, используйте это:

  android:paddingTop="2dp" android:paddingBottom="2dp"