Estoy usando lo nuevo TextInputLayout
de la biblioteca de diseño. Puedo hacer que se muestre y cambiar el color de la etiqueta flotante. Desafortunadamente, la EditText
pista real ahora es siempre blanca.
Intenté cambiar el hintColor en XML, estilos y mediante programación y también intenté usar el android.support.v7.widget.AppCompatEditText
pero el EditText
consejo siempre muestra blanco.
Aquí está mi XML para mi TextInputLayout
yEditText
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android.support.design:hintTextAppearance="@style/GreenTextInputLayout">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/city"
android:textColorHint="@color/black"
android:hint="@string/city" />
</android.support.design.widget.TextInputLayout>
Y aquí está el estilo que estoy usando para TextInputLayout
(intenté hacer que el hintTextColor
atributo fuera negro pero no hice nada por mí):
<style name="GreenTextInputLayout" parent="@style/TextAppearance.AppCompat">
<item name="android:textColor">@color/homestory_green</item>
</style>
Respuestas:
Defina
android:textColorHint
en el tema de su aplicación:Fuente
fuente
EditText
para que el color de la pista se configure en todas las entradas dentro de la vista ... todavía no he encontrado ninguna solución (requestFocus()
yperformClick()
no hagas el truco desafortunadamente).Crear estilo personalizado en style.xml
Luego, en su archivo xml de diseño, agregue el atributo de tema como se muestra a continuación
espero que esto funcione
fuente
Agregue la propiedad textColorHint a su texto de edición
o el color que quieras
fuente
Tengo el mismo problema. Se resolvió poniendo estas líneas en el tema principal .
Si pones estos
en un estilo separado y aplicarlo a TextInputLayout o Edittext no aparecerá. Usted TIENE que colocarlo en el tema de los padres de aplicación.
fuente
No estoy seguro de qué causa su problema, este código funciona perfectamente para mí. Creo que tiene algo que ver con el uso del espacio de nombres xml correcto (
xmlns
). No estoy seguro si se admite el uso de android.support.design sin el atributo de espacio de nombres xml. O tiene algo que ver con eltextColorHint
atributo que está utilizando en el propio EditText.Diseño:
Estilo:
fuente
@style/TextAppearance.Design.Hint
, lo que podría querer usar eso como suparent
lugar de@android:style/TextAppearance
o@style/TextAppearance.AppCompat
Consulte el siguiente código que funcionó para mí, pero afectará el color de todos sus controles.
fuente
En el TextInputLayout que contiene EditText, agregue:
fuente
Muchas respuestas pero solo necesitan una línea para esto:
android: textColorHint = "# 000000"
fuente
android: textColorHint = "# FFFFFF" a veces funciona y a veces no. Para mí, la solución a continuación funciona perfectamente
Pruebe el siguiente código: funciona en su archivo XML y el tema TextLabel se define en style.xml
En la carpeta de estilos TextLabel Code
Si solo desea cambiar el color de la etiqueta en estado falso, no se requieren colorAccent, colorControlNormal y colorControlActivated
fuente
Puedes usarlo
android:textColorHint="@color/color_black"
adentroTextInputlayout
Funcionó para mí.fuente
De acuerdo con esto: https://code.google.com/p/android/issues/detail?id=176559
Prueba esto:
Funciona en 23.1.1.
fuente
Con la biblioteca de Componentes de material puede personalizar el
TextInputLayout
color del texto de la sugerencia usando:En el diseño:
app:hintTextColor
atributo: el color de la etiqueta cuando se contrae y el campo de texto está activoandroid:textColorHint
atributo: el color de la etiqueta en todos los demás estados de campo de texto (como en reposo y deshabilitado)Algo como:
fuente
Parece que la vista principal tenía un estilo para una biblioteca de terceros que causaba que EditText fuera blanco.
Una vez que eliminé esto, todo funcionó bien.
fuente
intente esto puede esto ayudar
fuente
tarde pero puede ayudar a alguien que he hecho así
fuente
cambia tu colorAccent a tu color deseado dentro de tu tema, esto cambiará tu línea EditText, cursor y tu pista
o también puede incluir este estilo dentro de su style.xml
entonces dentro de su TextInputLayout puede ponerlo así
fuente
Use textColorHint para establecer el color que desea como color de Sugerencia para EditText. La cuestión es que la Sugerencia en EditText desaparece no cuando escribe algo, sino inmediatamente cuando EditText se enfoca (con una animación genial). Notarás esto claramente cuando cambies el foco y pases al EditText.
fuente
De la documentación:
Intente configurar
android:hint
y activarapp:hintTextColor
enTextInputLayout
lugar de activarTextInputEditText
.fuente
Debe establecer el color de la pista en TextInputLayout.
fuente
fuente
Prueba el siguiente código:
El color de la luz alta es blanco:
estilo: TextStyle
fuente
Aquí está mi experiencia con este problema similar y la solución requerida.
Requisito:
TextInputEditText
(puede decir que algunos deberían ser transparentes y otros no, pero usar colores personalizados para varios eventos)Problema enfrentado:
android:textColorHint
No funciona como se requiere.Soluciones probadas, que fallaron:
android:textColorHint
en estilo y aplicado aTextInputEditText
. Sin resultados ni diferencia.android:textColorHint
en el tema de la aplicación aplicada. Ayudó, pero ahora estaba configurado para toda la aplicación. (No cumple con los requisitos)Después de una gran cantidad de RnD, la mejor solución era encontrado en un artículo que describía que tenemos que aplicar el tema a
TextInputLayout
o a ella de vista padre en lugar de solamente aplicar estilo aTextInputEditText
o a ella de vista padre.Por favor, compruebe el tema apropiado de TextInputLayout, que nos dice cómo estamos en el camino equivocado.
fuente
Cuando intenté establecer el atributo del tema en TextInputLayout, el tema también se estaba aplicando a su vista de edición de texto secundario, lo que no quería.
Entonces, la solución que funcionó para mí fue agregar un estilo personalizado a la propiedad "app: hintTextAppearance" de TextInputLayout.
En styles.xml agregue el siguiente estilo:
Y aplique este estilo a la propiedad "app: hintTextAppearance" de TextInputLayout como se muestra a continuación:
fuente
Si está utilizando la nueva biblioteca de diseño de materiales androidx
com.google.android.material
, puede usar colorstatelist para controlar el color del texto de la sugerencia en el estado enfocado, suspendido y predeterminado de la siguiente manera. (inspirado por esto )En
res/color/text_input_box_stroke.xml
poner algo como lo siguiente:Entonces en tu
styles.xml
pondrías:Finalmente, indique su estilo en el real.
TextInputLayout
Por alguna razón, también debe establecer elandroid:textColorHint
color de texto predeterminado de la pista:fuente
si está utilizando la biblioteca de diseño de materiales. Actualmente estoy usando la versión
1 - Establecer color cuando TextInputLayout está en reposo.
2 - Establecer color cuando TextInputLayout es flotante / enfocado / girado.
3 - Establecer el color de la línea en TextInputLayout.
4 - Establecer el color del error en TextInputLayout.
fuente
Solo quería cambiar el color de la etiqueta cuando se levanta hacia arriba. Pero la configuración
textColorHint
cambia el color en todos los estados. Entonces, esto funcionó para mí:Esto cambiará el color cuando la entrada esté enfocada.
fuente