Mam problem z Palette -> Text
ustawieniem widoku, pojawia się komunikat problem. "Missing autofillHints attribute"
Jakieś sugestie?
Odpowiedzi:
Być może używasz EditText
. autofillHints
jest używany w API 26 i nowszych do wypełniania pustych EditText
s i faktycznie sugeruje, jaki typ treści powinien być tam umieszczony.
Poprostu dodaj :
android:autofillHints="username" // the type of content you want
Do ciebie EditText
i ostrzeżenie zniknie.
Można to zrobić przy użyciu nowego
android:autofillHints
atrybutu powiedziećautofill
jakiego rodzaju treści można się spodziewać , iandroid:importantForAutofill
powiedziećautofill
, które widoki chcesz (lub nie chcą) do obsadzenia.
Przeczytaj: https://medium.com/@bherbst/getting-androids-autofill-to-work-for-you-21435debea1
A to: https://developer.android.com/guide/topics/text/autofill-services
Edytować:
Możesz jednak ustawić:
android:importantForAutofill="no"
Aby składnik powiedział, że nie jest ważne, aby wypełnić i pozbyć się błędu.
autofillHints
minSdk> = 26 .
Należy użyć, android:importantForAutofill=no
jeśli nie chcesz podpowiedzi autouzupełniania
<EditText
android:importantForAutofill="no"/>
minSdk <26
1) Użyj tools:ignore="Autofill"
<EditText
tools:ignore="Autofill"/>
2) lub dodać android:importantForAutofill
potem tools:targetApi
do IDE nie robić tego ostrzeżenia o poziomie API
<EditText
android:importantForAutofill="no"
tools:targetApi="o"
/>
autofillHints
minSdk> = 26
Wystarczy dodać android:autofillHints="{a contant value}"
(np . "android:autofillHints="password"
:) (użyj stałej stąd )
minSdk <26 , dodaj, tools:targetApi
aby IDE nie było tego ostrzeżenia
<EditText
android:autofillHints="email"
tools:targetApi="o"/>
Uwaga
autofillHints
i importantForAutofill
używany tylko w API 26 i nowszych, ale nadal możemy go używać w API <26 bez awarii ( możesz zobaczyć w tej odpowiedzi) (nie ulega awarii, ale oczywiście nie ma żadnego efektu z API <26)
tool:...
po prostu użyj, aby IDE nie ostrzegało, nie wpłynie to na nic podczas działania aplikacji
android:autoFillHints
stała dla adresu e-mail jest emailAddress
raczej niż tylko email
.
musisz plik strings.xml i włączyć tam tekst ciągu, na przykład:
<string name="editText2">Name</string>.
następnie musisz activity_mail.xml
- a następnie włączyć tam działanie autouzupełniania , używając:
android:hint="@string/editText2"
tools:ignore="Autofill"
to na razie jedyny sposób na ignorowanie.