“Відсутній атрибут autofillHints”


92

У мене виникла проблема, Palette -> Text
коли я хочу встановити деякий вигляд, я отримую повідомлення про проблему. "Missing autofillHints attribute"
Будь-які пропозиції?


1
tools:ignore="Autofill"поки що це єдиний спосіб ігнорувати.
Пратік Бутані

Відповіді:


94

Можливо, ви використовуєте EditText. autofillHintsвикористовується в API 26 і вище для заповнення порожніх EditTextс, і насправді пропонується, який тип вмісту слід розмістити там.

Просто додайте:

android:autofillHints="username" // the type of content you want

До вашого EditTextі попередження зникне.

Ви робите це, використовуючи новий android:autofillHintsатрибут, щоб визначити autofill тип вмісту, який ви очікуєте , і android:importantForAutofillвказати, autofillякі подання ви хочете (або не хочете) заповнювати.

Читати: https://medium.com/@bherbst/getting-androids-autofill-to-work-for-you-21435debea1

І це: https://developer.android.com/guide/topics/text/autofill-services


Редагувати:

Однак ви можете встановити:

android:importantForAutofill="no"

Компоненту сказати, що не важливо заповнити та позбутися помилки.


Знову помилки :( "Відсутня мітка доступності" "Атрибут невикористаний у попередній версії"
Себастьян

Чи можу я побачити знімок екрана? Після цього воно повинно зникнути.
ʍѳђ ઽ ૯ ท

Знову помилки :( "Відсутній ярлик доступності" "Атрибут невикористаний у попередній версії"
Себастьян

Я тут нова людина, тому поки що не можу надсилати фотографії :(
Себастьян,

1
Примітка: "importantForAutofill" використовується лише в API рівня 26 і вище
bunkerdive

91

Якщо ти не хочеш autofillHints

minSdk> = 26 .

Використовуйте, android:importantForAutofill=noякщо ви не хочете підказки про автозаповнення

<EditText
        android:importantForAutofill="no"/>

minSdk <26

1) Використання tools:ignore="Autofill"

<EditText
        tools:ignore="Autofill"/>

2) Чи додати android:importantForAutofillте , tools:targetApiщоб зробити IDE чи не це попередження про рівень API

<EditText
        android:importantForAutofill="no"
        tools:targetApi="o"
 />

Якщо хочете autofillHints

minSdk> = 26

  • Просто потрібно додати android:autofillHints="{a contant value}"(наприклад:) "android:autofillHints="password"(використовуйте константу звідси )

minSdk <26 , додайте, tools:targetApiщоб зробити IDE не попереджувати

    <EditText
            android:autofillHints="email"
            tools:targetApi="o"/>

Примітка

  • autofillHintsі importantForAutofillвикористовується лише в API 26 і вище, але ми все ще можемо використовувати його в API <26 без збоїв ( ви можете бачити в цій відповіді) (він не аварійно завершує роботу, але, звичайно, не впливає на API <26)

  • tool:... просто використовуйте, щоб IDE не попереджав, це нічого не вплине на запущений додаток


2
Згідно з документацією - developer.android.com/reference/android/view/… - android:autoFillHintsконстанта адреси електронної пошти є emailAddressне простою email.
заборона геоінженерії

@ ban-geoingineering цей коментар був для мене кориснішим за всю відповідь. Дякую тонна
Картік

Ця відповідь краще структурована та читабельніша за прийняту.
Тухід

0

вам потрібно до файлу strings.xml і включити там текст рядка, наприклад:

<string name="editText2">Name</string>.

тоді вам потрібно activity_mail.xml- а потім увімкнути там функцію автозаповнення , використовуючи:

android:hint="@string/editText2"

Існує не вирішення проблеми
djardon
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.