"ไม่มีแอตทริบิวต์ autofillHints"


92

ฉันมีปัญหากับPalette -> Text
เมื่อฉันต้องการตั้งค่ามุมมองบางอย่างฉันได้รับข้อความปัญหา"Missing autofillHints attribute"
ข้อเสนอแนะใด ๆ ?


1
tools:ignore="Autofill"เป็นวิธีเดียวที่จะเพิกเฉยในตอนนี้
Pratik Butani

คำตอบ:


94

บางทีคุณอาจใช้EditTextไฟล์. autofillHintsใช้ใน API 26 ขึ้นไปสำหรับการเติมEditTexts ว่างและแนะนำว่าควรวางเนื้อหาประเภทใดไว้ที่นั่น

เพียงเพิ่ม:

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"

เพื่อบอกส่วนประกอบว่าการเติมเต็มและกำจัดข้อผิดพลาดนั้นไม่สำคัญ


ข้อผิดพลาดอีกครั้ง :( "ไม่มีป้ายกำกับการเข้าถึง" "แอตทริบิวต์ที่ไม่ได้ใช้ในเวอร์ชันเก่า"
เซบาสเตียน

ฉันสามารถดูภาพหน้าจอได้หรือไม่? มันควรจะหายไปหลังจากนั้น
ʍѳђઽ ૯

ข้อผิดพลาดอีกครั้ง :( "ไม่มีป้ายกำกับการเข้าถึง" "แอตทริบิวต์ที่ไม่ได้ใช้ในเวอร์ชันเก่า"
เซบาสเตียน

ฉันเป็นคนใหม่ที่นี่ฉันจึงยังไม่สามารถส่งรูปภาพได้ :(
Sebastian

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/... - The android:autoFillHintsคงที่สำหรับที่อยู่อีเมลที่เป็นมากกว่าแค่emailAddress email
ban-geoengineering

@ ban-geoengineering ความคิดเห็นนี้มีประโยชน์สำหรับฉันมากกว่าคำตอบทั้งหมด ขอบคุณตัน
Kartik

คำตอบนี้มีโครงสร้างที่ดีกว่าและอ่านได้ง่ายกว่าคำตอบที่ยอมรับ
Touhid

0

คุณต้องใช้ไฟล์strings.xmlและเปิดใช้งานข้อความสตริงในนั้นตัวอย่างเช่น:

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

จากนั้นคุณต้องactivity_mail.xml- แล้วเปิดใช้งานกิจกรรมป้อนคำแนะนำอัตโนมัติที่นั่นโดยใช้:

android:hint="@string/editText2"

ไม่มีวิธีแก้ปัญหา
djardon
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.