Saya ingin mengubah warna biru di bawah teks edit, saya tidak tahu properti apa itu.
Saya mencoba menggunakan warna latar belakang yang berbeda untuk itu tetapi tidak berhasil.
Saya telah melampirkan gambar di bawah ini:
android
login
android-edittext
AndroidEnthusiast
sumber
sumber
Jawaban:
Sebenarnya cukup mudah untuk mengatur warna garis bawah dari EditText secara terprogram (hanya satu baris kode).
Untuk mengatur warna:
Untuk menghilangkan warna:
Catatan: saat EditText memiliki fokus , warna yang Anda atur tidak akan berpengaruh, melainkan memiliki warna fokus.
Referensi API:
Drawable # setColorFilter
Drawable # clearColorFilter
sumber
Control.Background.SetColorFilter(Android.Graphics.Color.White, PorterDuff.Mode.SrcIn);
Renderer
yang Anda timpa? Saya mencoba mencari cara untuk membuat ini berfungsi untuk bilah pencarian.SearchBarRenderer
bukan tipeEditText
. Tidak bisa membuatnya bekerja.Gunakan
android:backgroundTint=""
dalamEditText
tata letak xml Anda .Untuk api <21 Anda dapat menggunakan
AppCompatEditText
dari pustaka dukunganapp:backgroundTint=""
sumber
android:background="@null"
untuk perangkat dengan api <21.Anda harus menggunakan gambar latar belakang yang berbeda, bukan warna, untuk setiap status
EditText
(fokus, diaktifkan, diaktifkan).http://android-holo-colors.com/
Di situs di atas, Anda bisa mendapatkan gambar dari banyak komponen dalam tema Holo. Cukup pilih "EditText" dan warna yang Anda inginkan. Anda dapat melihat pratinjau di bagian bawah halaman.
Unduh file .zip, dan salin tempel sumber daya dalam proyek Anda (gambar dan XML).
jika XML Anda dinamai: apptheme_edit_text_holo_light.xml (atau yang serupa):
Buka XML "styles.xml" Anda dan tambahkan
EditText
gaya kustom :Lakukan saja ini di
EditText
:Dan itu saja, saya harap ini membantu Anda.
sumber
Ini berfungsi dengan baik untuk versi lama dan baru Android (berfungsi dengan baik bahkan pada API 10!).
Tentukan gaya ini di
styles.xml
:Dan sekarang di XML Anda, setel ini sebagai tema dan gaya ( gaya untuk disetel
textColor
, dan tema untuk menyetel semua hal lainnya):Edit
Solusi ini menyebabkan kesalahan UI kecil pada versi Android yang lebih baru (Lollipop atau Marshmallow dan seterusnya) yang gagang pemilihannya digarisbawahi.
Masalah ini dibahas di utas ini . (Saya belum mencoba solusi ini secara pribadi)
sumber
Anda dapat mengubah Underline dari EditText warna menentukan dalam styles.xml . Dalam gaya tema aplikasi Anda.xml tambahkan yang berikut ini.
Seperti yang ditunjukkan oleh ana di bagian komentar
pengaturan ini dalam gaya tema bekerja dengan baik untuk mengubah warna garis bawah teks editan.
sumber
android:textColorSecondary
digunakan untuk menentukan warna panah kembali danDrawerLayout
ikon hamburger di ActionBar, juga.<item name="colorControlNormal">@color/edittext_underline_color</item>
alih-alih textColorSecondary karena masalah pewarnaan bilah navigasi.Jadi, Anda perlu membuat file .xml baru di folder drawable Anda.
Di file itu tempel kode ini:
Dan di EditText Anda, setel
Anda dapat bermain dengan xml drawable, sudut setel, paddings, dll.
sumber
Dalam gaya aplikasi Anda, tentukan properti colorAccent . Di sini Anda menemukan contohnya
sumber
Anda dapat mengubah warna EditText secara terprogram hanya dengan menggunakan baris kode ini dengan mudah:
edittext.setBackgroundTintList(ColorStateList.valueOf(yourcolor));
sumber
Gunakan kode di bawah ini untuk mengubah warna latar belakang perbatasan edit-teks.
Buat file XML baru di bawah drawable.
abc.xml
dan menambahkannya sebagai latar belakang teks edit Anda
sumber
Untuk mengubah warna garis bawah, Anda dapat menggunakan ini di tema aplikasi Anda:
Untuk mengubah warna label mengambang, tulis tema berikut:
dan gunakan tema ini dalam tata letak Anda:
sumber
Anda dapat melakukannya dengan AppCompatEditText dan pemilih warna:
selector_edittext_underline.xml:
sumber
Jika Anda tidak harus mendukung perangkat dengan API <21, gunakan backgroundHint di xml, misalnya:
Untuk dukungan dan fallback yang lebih baik, gunakan solusi @Akariuz. backgroundHint adalah solusi yang paling mudah, tetapi tidak kompatibel dengan versi sebelumnya, berdasarkan kebutuhan Anda untuk menelepon.
sumber
ubah
colorAccent
warna yang Anda butuhkan untuk mengatur warna itucolorAccent
dan jalankan Anda mendapatkan hasilnyasumber
Cukup ubah android: backgroundTint dalam kode xml ke warna Anda
sumber