Как уже упоминалось, cephus android:drawablePadding
будет принудительно заполнять текст и рисовать только в том случае, если кнопка достаточно мала.
При размещении кнопок большего размера вы можете использовать android:drawablePadding
в сочетании с android:paddingLeft
и android:paddingRight
для принудительного ввода текста и рисования внутрь по направлению к центру кнопки. Регулируя левый и правый отступы по отдельности, вы можете сделать очень подробные настройки макета.
Вот пример кнопки, которая использует отступы для сближения текста и значка ближе, чем они были бы по умолчанию:
<Button android:text="@string/button_label"
android:id="@+id/buttonId"
android:layout_width="160dip"
android:layout_height="60dip"
android:layout_gravity="center"
android:textSize="13dip"
android:drawableLeft="@drawable/button_icon"
android:drawablePadding="2dip"
android:paddingLeft="30dip"
android:paddingRight="26dip"
android:singleLine="true"
android:gravity="center" />