Tengo un problema Palette -> Text
Cuando quiero establecer alguna vista, recibo un mensaje Problema ¿ "Missing autofillHints attribute"
Alguna sugerencia?
tools:ignore="Autofill"es la única forma de ignorar por ahora.
Pratik Butani
Respuestas:
93
Quizás esté utilizando un EditText. autofillHintsse usa en la API 26 y superior para completar los mensajes de correo electrónico vacíos EditTexty en realidad sugiere qué tipo de contenido debe colocarse allí.
Solo agrega :
android:autofillHints="username"// the type of content you want
A tu EditTexty la advertencia desaparecerá.
Esto se hace usando el nuevo android:autofillHintsatributo para decirle
autofillqué tipo de contenido que usted espera , y
android:importantForAutofillpara decirle autofillqué vistas desea (o no) a ser llenado.
autofillHintsy importantForAutofillsolo se usa en API 26 y superior, pero aún podemos usarlo en API <26 sin fallar ( puede ver en esta respuesta) (no falla pero, por supuesto, no tiene ningún efecto con API <26)
tool:... solo use para hacer que el IDE no advierta, no afectará nada cuando la aplicación se ejecute
Según la documentación - developer.android.com/reference/android/view/… - la android:autoFillHintsconstante para una dirección de correo electrónico es en emailAddresslugar de solo email.
ban-geoengineering
@ ban-geoengineering este comentario fue más útil para mí que la respuesta completa. Muchas gracias
Kartik
Esta respuesta está mejor estructurada y es más legible que la aceptada.
Touhid
0
necesita el archivo strings.xml y habilitar el texto de la cadena allí, por ejemplo:
<string name="editText2">Name</string>.
entonces necesita activity_mail.xml- y luego habilitar la actividad de autocompletar allí, usando:
tools:ignore="Autofill"
es la única forma de ignorar por ahora.Respuestas:
Quizás esté utilizando un
EditText
.autofillHints
se usa en la API 26 y superior para completar los mensajes de correo electrónico vacíosEditText
y en realidad sugiere qué tipo de contenido debe colocarse allí.Solo agrega :
android:autofillHints="username" // the type of content you want
A tu
EditText
y la advertencia desaparecerá.Leer: https://medium.com/@bherbst/getting-androids-autofill-to-work-for-you-21435debea1
Y esto: https://developer.android.com/guide/topics/text/autofill-services
Editar:
Sin embargo, puede configurar:
android:importantForAutofill="no"
Al componente para decirle que no es importante llenar y deshacerse del error.
fuente
Si no quieres
autofillHints
minSdk> = 26 .
Debería usarlo
android:importantForAutofill=no
si no desea la pista de autocompletar<EditText android:importantForAutofill="no"/>
minSdk <26
1) Utilizar
tools:ignore="Autofill"
<EditText tools:ignore="Autofill"/>
2) O agregue
android:importantForAutofill
luegotools:targetApi
para hacer IDE, no haga esta advertencia sobre el nivel de API<EditText android:importantForAutofill="no" tools:targetApi="o" />
Si tu quieres
autofillHints
minSdk> = 26
Solo necesita agregar
android:autofillHints="{a contant value}"
(por ejemplo:)"android:autofillHints="password"
(use constante desde aquí )minSdk <26 , agregar
tools:targetApi
para hacer IDE no esta advertencia<EditText android:autofillHints="email" tools:targetApi="o"/>
Nota
autofillHints
yimportantForAutofill
solo se usa en API 26 y superior, pero aún podemos usarlo en API <26 sin fallar ( puede ver en esta respuesta) (no falla pero, por supuesto, no tiene ningún efecto con API <26)tool:...
solo use para hacer que el IDE no advierta, no afectará nada cuando la aplicación se ejecutefuente
android:autoFillHints
constante para una dirección de correo electrónico es enemailAddress
lugar de soloemail
.necesita el archivo strings.xml y habilitar el texto de la cadena allí, por ejemplo:
<string name="editText2">Name</string>.
entonces necesita
activity_mail.xml
- y luego habilitar la actividad de autocompletar allí, usando:android:hint="@string/editText2"
fuente