java - redondo - ¿Cómo eliminar el relleno de los botones en Android?
personalizar botones android studio (8)
En el conjunto de botones XML de android:includeFontPadding="false"
En mi aplicación de Android, tengo este diseño:
<?xml version="1.0" encoding="utf-8" ?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
class="com.google.android.gms.maps.SupportMapFragment"/>
<Button
android:id="@+id/button_back"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="CloseActivity"
android:padding="0dp"
android:text="@+string/back" />
</LinearLayout>
En la vista previa y en el teléfono, se ve así:
Como puede ver en el botón en el área inferior, hay algo de relleno allí.
¿Cómo puedo deshacerme de eso y dejar que el botón llene por completo el área inferior?
Eso no es relleno, es la sombra alrededor del botón en su fondo dibujable. Crea tu propio fondo y desaparecerá.
No parece ser relleno, margen, o mínimo / ancho. Configuración android:background="@null"
el botón pierde su animación táctil, pero resulta que establecer el fondo en cualquier cosa corrige ese borde.
Actualmente estoy trabajando con:
minSdkVersion 19
targetSdkVersion 23
Para eliminar el relleno alrededor del botón de alternar necesitamos configurar minWidth y minHeight 0dp. android:minWidth="0dp" android:minHeight="0dp"
<ToggleButton
android:id="@+id/toggle_row_notifications"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="0dp"
android:minHeight="0dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:padding="@dimen/_5sdp"
android:textOn=""
android:textOff=""
android:background="@android:color/transparent"
android:button="@drawable/toggle_selector"
/>
establece tu archivo dibujable a un atributo de botón como: android:button="@drawable/toggle_selector"
Debajo está mi archivo toggle_selecter.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/notifications_toggle_on"
android:state_checked="true"/>
<item android:drawable="@drawable/notifications_toggle_off"
android:state_checked="false"/>
</selector>
Para mí, el problema resultó ser minHeight y minWidth en algunos de los temas de Android.
En el elemento Button, agregue:
<Button android:minHeight="0dp" android:minWidth="0dp" ...
O en el estilo de tu botón:
<item name="android:minHeight">0dp</item>
<item name="android:minWidth">0dp</item>
Soy nuevo en Android pero tuve una situación similar. Hice lo que @Delyan sugirió y también usé android: background = "@ null" en el archivo de diseño xml.
Tuve el mismo problema y parece que se debe al color de fondo del botón. Intente cambiar el color de fondo a otro color, por ejemplo:
android:background="@color/colorActive"
y mira si funciona Luego puede definir un estilo si desea que el botón lo use.
Una solución alternativa puede ser intentar usar valores -ve
para márgenes como los siguientes:
<Button
android:id="@+id/button_back"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="CloseActivity"
android:padding="0dp"
android:layout_marginLeft="-5dip"
android:layout_marginRight="-5dip"
android:layout_marginTop="-5dip"
android:layout_marginBottom="-5dip"
android:text="@string/back" />
Hará que ese espacio se desvanezca. Quiero decir que puedes elegir el valor de dip
adecuado, lo que hace que desaparezca. Funcionó para mí Espero que funcione para ti.