¿Es posible especificar el borde en el botón android?
¿Es posible especificar el borde en el botón android en el archivo main.xml? [Ps sin el 'archivo xml separado que contiene etiqueta de trazo', pero en el archivo original main.xml donde defino el botón y también sin la solución 'dinámicamente por programación' y solución 'imágenes']
<Button android:background="#FFFFFF" android:layout_width="0dp" android:layout_height="fill_parent" android:text="Player 3" android:layout_x="0px" android:layout_y="0px" android:id="@+id/p3" android:layout_weight="1" />
Aquí estoy cambiando el fondo dinámicamente pero el problema es, para 2 botones no hay frontera.
- Centrar un dibujable en un botón con fondo y sin texto
- Desactivar el botón Atrás en android
- El botón flotante de Android no se muestra
- Cambiar el texto del botón y la acción - desarrollo de Android
- ¿Hay un tamaño de botón estándar?
- ¿Cómo aclarar un botón?
- No se puede encontrar el método onClick
- ¿Cómo puedo mantener un botón tan presionado después de hacer clic en él?
- Tamaño de fuente del botón de programación de Android en píxeles
- Botón para copiar el valor de una cadena al portapapeles
- Android: Cómo crear el botón de diapositiva (encendido / apagado)
- Android - Set Haga clic en el botón de enfoque
- Necesita ayuda con el botón de retroactiva para volver a la vista web
Esta no es la forma recomendada de hacerlo porque causa overdraw y añade vistas innecesarias, Gunaseelan tiene el método adecuado .
No hay concepto de fronteras como un atributo. La manera aceptada es usar un dibujable separado como el fondo a la View
(usando el stroke
como usted ha mencionado y como escribe @gunaseelan).
La otra forma (no recomendada) es incluir el Button
en otra View
como un LinearLayout
, establecer el color de fondo en el color de borde deseado en la View
encapsulado y el relleno en la View
externa también.
<LinearLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:background="#342334" android:padding="5dp" > <Button android:layout_height="wrap_content" android:layout_width="match_parent" android:text="whatwhaaat" /> </LinearLayout>
El valor del relleno indicará el grosor del borde. Este método no es recomendable ya que se termina con una View
adicional en su diseño, y otra capa de sobregiro (dibuja LinearLayout
luego el Button
en la parte superior).
Trate de usar la forma
My_shape.xml
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <corners android:bottomLeftRadius="7dp" android:bottomRightRadius="7dp" android:radius="0.1dp" android:topLeftRadius="7dp" android:topRightRadius="7dp" /> <solid android:color="#FFFFFF" /> <stroke android:width="1dp" android:color="#E8E6E7" /> </shape>
Y botón
<Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/my_shape" android:text="Button" />
Captura de pantalla
Espero que esto ayude.
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <gradient android:angle="270" android:endColor="#E8f2fe" android:startColor="E8f2fe" /> <corners android:radius="3dp" /> <stroke android:width="2px" android:color="#486e9d" />
Para más información http://androiddhina.blogspot.in/2015/09/border-color-on-android-button.html