¿Cómo puedo eliminar el borde con aparece al enfocar una vista de edición de texto?
Lo necesito porque esta vista tiene poco espacio en la pantalla, pero sin el borde es suficiente. Cuando se ejecuta en el emulador, aparece un borde naranja y en el dispositivo uno azul.
android
android-edittext
Marcos Vasconcelos
fuente
fuente
Respuestas:
¿Ha intentado configurar el fondo del
EditText
en un color transparente?<EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="@string/hello" android:background="#00000000" />
fuente
"@android:color/transparent"
es un poco más autoexplicativo."@null"
también puede ser una opción<EditText android:id="@+id/edittext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:drawable/editbox_background_normal" />
fuente
Es posible. Sin embargo, no lo recomendaría porque los usuarios están acostumbrados a ciertas metáforas y no debería cambiar la UX general.
Puede aplicar diferentes estilos a sus vistas. En su caso, parece que desea un elemento EditText View que se parece a un elemento TextView. En este caso, tendría que especificar otros fondos para EditText dependiendo del estado del elemento View.
En su layout.xml deseado, asigna un fondo a su EditText:
<EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="@string/hello" android:background="@drawable/custom" />
Luego crea el archivo custom.xml en su carpeta dibujable y agrega lo siguiente:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/textfield_default" /> <item android:state_window_focused="false" android:state_enabled="false" android:drawable="@drawable/textfield_disabled" /> <item android:state_pressed="true" android:drawable="@drawable/textfield_default" /> <item android:state_enabled="true" android:state_focused="true" android:drawable="@drawable/textfield_default" /> <item android:state_enabled="true" android:drawable="@drawable/textfield_default" /> <item android:state_focused="true" android:drawable="@drawable/textfield_disabled" /> <item android:drawable="@drawable/textfield_disabled" /> </selector>
Esos son los posibles estados de su elemento Vista EditText. Normalmente, puede acceder a
@android:drawable/textfield_default
los elementos de diseño de la plataforma Android directamente utilizando , pero en este caso los elementos de diseño de campo de texto son privados, por lo que debe copiarlos en su propia carpeta de elementos de diseño. Los recursos originales se pueden encontrar en la carpeta de instalación de su SDK enANDROID_HOME\platforms\android-(API LEVEL)\data\res\drawable-(*dpi)\
.Una vez que haya terminado, terminará con un EditText que parece un TextView pero completamente sin esos bordes. Esos bordes naranjas que vio en el emulador son los elementos de diseño predeterminados de Android. Los azules son específicos del proveedor (posiblemente Samsung).
Espero que haya ayudado y no haya confundido tanto.
fuente
Esta es la solución más rápida:
<EditText android:id="@+id/edittext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00000000" />
fuente
Puede mantener el color de fondo transparente para quitar el borde EditText en foco.
Método 1
<EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#00000000" />
fuente