Saya menggunakan TextInputLayout dengan AppCompatEditText yang memiliki latar belakang berbasis bentuk xml khusus untuk AppCompatEditText. Setiap kali saya menetapkan beberapa kesalahan, baris kesalahan dimulai dari awal tata letak. Apakah ada cara untuk memberi bantalan pada baris kesalahan itu.
Bantalan teks kesalahan TextInputLayout
Jawaban (3)
Anda dapat mereferensikan kesalahan TextView dengan menggunakan:
TextView textView = (TextView) inputLayout.findViewById(android.support.design.R.id
.textinput_error);
Kemudian Anda bisa mendapatkan parameter tata letaknya untuk digunakan.
Saya berjuang untuk menyelesaikan ini dan inilah yang berhasil bagi saya:
Menghapus padding pada induk dari tampilan teks kesalahan saya
Menggunakan solusi ini Saya dapat menemukan tampilan teks kesalahan (karena saya perlu menambahkan ikon ke dalamnya) tetapi tidak dapat menghilangkannya dari padding, jadi setelah beberapa kali mencoba saya menyadari bahwa TextInputLayout memiliki 2 anak jadi menghapus padding dari anak kedua berhasil dan untuk memastikan, saya menghapusnya juga dari yang pertama
Dengan menggunakan ekstensi Kotlin saya menemukan solusi yang bersih
/**
* TextInputLayout
*/
fun TextInputLayout.removePadding() {
for (i in 0 until this.childCount) {
this.getChildAt(i).setPadding(0)
}
}
Anda juga dapat melakukannya di Java menggunakan logika yang sama.
setError(null)
- person BST Kaal   schedule 21.01.2016