ฉันกำลังใช้ TextInputLayout กับ AppCompatEditText ที่มีพื้นหลังตามรูปร่าง xml ที่กำหนดเองสำหรับ AppCompatEditText เมื่อใดก็ตามที่ฉันตั้งค่าข้อผิดพลาด บรรทัดข้อผิดพลาดจะเริ่มจากจุดเริ่มต้นของเค้าโครง มีวิธีใดที่จะเพิ่มช่องว่างภายในให้กับบรรทัดข้อผิดพลาดนั้น
การขยายข้อความข้อผิดพลาด TextInputLayout
คำตอบ (3)
คุณสามารถอ้างอิงข้อผิดพลาด TextView ได้โดยใช้:
TextView textView = (TextView) inputLayout.findViewById(android.support.design.R.id
.textinput_error);
จากนั้นคุณสามารถรับพารามิเตอร์เค้าโครงให้ใช้งานได้
person
Boris Kozyrev
schedule
31.05.2017
การแฮ็กที่มีความเสี่ยงนั้นมีความเสี่ยง ในขณะเดียวกัน ฉันไม่คิดว่า ID จะเปลี่ยนแปลงในเร็วๆ นี้
- person Aba; 20.05.2018
โปรดทราบว่ามุมมองข้อความแสดงข้อผิดพลาดจะถูกสร้างขึ้นเมื่อมีการแสดงข้อผิดพลาดเท่านั้น ดังนั้น คุณจะต้องเปลี่ยนพารามิเตอร์หลังจากที่คุณแสดงข้อผิดพลาดใน TextInputLayout ของคุณ
- person Almighty; 22.05.2019
ฉันพยายามแก้ไขปัญหานี้ และนี่คือสิ่งที่ใช้ได้ผลสำหรับฉัน:
การถอดช่องว่างภายในพาเรนต์ของพาเรนต์ของมุมมองข้อความข้อผิดพลาดของฉัน
การใช้วิธีแก้ปัญหานี้ ฉันพบข้อผิดพลาด textview (เพราะฉันต้องเพิ่มไอคอนลงไป) แต่ไม่สามารถกำจัดได้ ของช่องว่างภายใน ดังนั้นหลังจากพยายามไม่กี่ครั้งฉันก็รู้ว่า TextInputLayout มีลูก 2 คน ดังนั้นการลบช่องว่างภายในออกจากลูกคนที่สองจึงเป็นกลอุบายและเพื่อให้แน่ใจว่าฉันลบมันออกจากอันแรกด้วย
การใช้ส่วนขยาย Kotlin ฉันพบวิธีแก้ปัญหาใหม่ทั้งหมด
/**
* TextInputLayout
*/
fun TextInputLayout.removePadding() {
for (i in 0 until this.childCount) {
this.getChildAt(i).setPadding(0)
}
}
คุณสามารถทำได้ใน java โดยใช้ตรรกะเดียวกัน
person
einschneidend
schedule
13.05.2021
person
schedule
สำหรับ Inner EditText อย่าใช้ MarginLeft และ MarginRight
- person Mallikarjuna; 05.03.2017
setError(null)
- person BST Kaal   schedule 21.01.2016