Bagaimana cara mengubah CheckBox
warna default di Android?
Secara default CheckBox
warnanya hijau, dan saya ingin mengubah warna ini.
Jika tidak memungkinkan, tolong beri tahu saya cara membuat kebiasaan CheckBox
?
247
Bagaimana cara mengubah CheckBox
warna default di Android?
Secara default CheckBox
warnanya hijau, dan saya ingin mengubah warna ini.
Jika tidak memungkinkan, tolong beri tahu saya cara membuat kebiasaan CheckBox
?
android:buttonTint="@color/mybrown"
adalah cara mudah untuk mengubah warna kotak.app:buttonTint="@color/mybrown"
sebagai gantinya, dengan cara ini bisa bekerja pada API <21Jawaban:
Jika
minSdkVersion
21+ Anda menggunakanandroid:buttonTint
atribut untuk memperbarui warna kotak centang:Dalam proyek-proyek yang menggunakan pustaka AppCompat dan mendukung versi Android di bawah 21 Anda dapat menggunakan versi compat dari
buttonTint
atribut:Dalam hal ini jika Anda ingin subkelas a
CheckBox
jangan lupa untuk menggunakannyaAppCompatCheckBox
.JAWABAN SEBELUMNYA:
Anda dapat mengubah
CheckBox
drawable menggunakanandroid:button="@drawable/your_check_drawable"
atribut.sumber
contentControl
opsi sekarang: materialdoc.com/components/selection-controlsAnda dapat mengubah warna secara langsung dalam XML. Gunakan
buttonTint
untuk kotak: (pada API level 23)Anda juga dapat melakukan ini menggunakan
appCompatCheckbox v7
level API yang lebih lama:sumber
Anda dapat mengatur tema android dari kotak centang untuk mendapatkan warna yang Anda inginkan di styles.xml Anda tambahkan:
lalu di file tata letak Anda:
tidak seperti menggunakan
android:buttonTint="@color/CHECK_COLOR"
metode ini bekerja di bawah Api 23sumber
Versi terprogram:
sumber
Gunakan
buttonTint
untuk mengubah warna tombol dan pemilih warna untuk di atas 21+ versi api.res / colors / checkbox_filter_tint.xml
sumber
values
sumber daya. Seperti yang ditunjukkan oleh jalur yang ditunjukkan di atas, harus ada di dalamcolors
folder sumber daya.Saya akan menyarankan untuk menggunakan pendekatan gaya di Android sebagai cara untuk mengkonfigurasi tampilan Android bawaan, tambahkan gaya baru di proyek Anda:
dan tambahkan tetapkan gaya ini ke tema kotak centang: android: theme = "@ style / youStyle"
semoga ini membantu.
sumber
sumber
Tambahkan baris ini di
styles.xml
file Anda :sumber
buttonTint berhasil untuk saya coba
android: buttonTint = "@ color / white"
sumber
Saya menghadapi masalah yang sama, saya mendapat solusi menggunakan teknik di bawah ini. Salin
btn_check.xml
dariandroid-sdk/platforms/android-#(version)/data/res/drawable
ke folder yang dapat ditarik proyek Anda dan ubah status gambar 'on' dan 'off' menjadi gambar khusus Anda.Maka xml Anda hanya perlu
android:button="@drawable/btn_check"
Jika Anda ingin menggunakan berbagai ikon Android default, Anda dapat menggunakan:
sumber
Anda dapat mengubah
checkbox
warna menggunakan garis kode menghanguskanandroid:buttonTint="@color/app_color" //whatever color
sumber
Pendekatan 100% kuat.
Dalam kasus saya, saya tidak memiliki akses ke file sumber tata letak XML, karena saya mendapatkan kotak centang dari lib MaterialDialog pihak ke-3. Jadi saya harus menyelesaikan ini secara terprogram.
res / color / checkbox_tinit_dark_theme.xml:
Kemudian menerapkannya ke kotak centang:
PS Selain itu jika seseorang tertarik, berikut adalah bagaimana Anda bisa mendapatkan kotak centang dari dialog MaterialDialog (jika Anda mengaturnya dengan
.checkBoxPromptRes(...)
):Semoga ini membantu.
sumber
buat xml di
Drawable resource file
bawahres->drawable
dan beri nama, misalnya,checkbox_custom_01.xml
Unggah file gambar kotak centang khusus Anda (saya sarankan png) ke
res->drawable
folder Anda .Lalu buka file tata letak Anda dan ubah kotak centang Anda ke
Anda dapat menyesuaikan apa pun, selama
android:button
menunjuk ke file XML yang benar yang Anda buat sebelumnya.CATATAN UNTUK NEWBIES: meskipun tidak wajib, tetap merupakan praktik yang baik untuk memberi nama kotak centang Anda dengan id unik di seluruh pohon tata letak Anda.
sumber
Hai Ini adalah kode tema untuk Dark Theme dan Light Theme.
Jika Anda ingin mengubah warna kotak centang maka atribut "colorAccent" akan digunakan untuk status yang dicentang dan "android: textColorSecondary" akan digunakan untuk menghapus centang status.
"actionOverflowButtonStyle" akan digunakan untuk mengubah warna ikon overflow di bilah Tindakan.
Atribut "buttonsearch_picture" akan digunakan untuk mengubah warna warna Tombol Tindakan di Bilah Tindakan. Ini adalah atribut khusus di style.xml
Sama untuk tombol refresh yang saya gunakan di aplikasi saya.
Atribut "android: popupMenuStyle" digunakan untuk mendapatkan gaya menu popup tema Cahaya dalam tema Gelap.
Dan ini adalah Kode bilah alat yang saya gunakan di Aplikasi Rocks Player saya.
Tema: -
sumber
Anda dapat membuat xml Anda sendiri di drawable dan menggunakan ini sebagai android: background = "@ drawable / your_xml"
bahwa Anda dapat memberikan segalanya sudut perbatasan
sumber
Anda dapat menggunakan dua properti berikut di "colors.xml"
colorControlNormal adalah untuk tampilan kotak centang normal, dan colorControlActivated adalah untuk ketika kotak centang dicentang.
sumber
Anda dapat mengubah warna latar belakang
<CheckBox>
dengan menyematkannya di dalam a<LinearLayout>
. Kemudian ubah warna latar belakang<LinearLayout>
menjadi warna yang Anda inginkan.sumber
Anda harus mencoba kode di bawah ini. Ini bekerja untuk saya.
dan Kotak centang
sumber
Jika Anda akan menggunakan ikon android, seperti dijelaskan di atas ..
.. itu adalah opsi yang bagus, tetapi agar ini berfungsi - saya menemukan Anda perlu menambahkan toggle logic untuk menampilkan / menyembunyikan tanda centang, seperti ini:
sumber
Sebagian besar jawaban melalui file xml. Jika Anda menemukan jawaban aktif untuk sebagian besar versi Android dan hanya satu warna untuk dua status Periksa sebuah Hapus centang: di sini adalah solusi saya:
Kotlin:
Jawa:
sumber
Ada cara yang lebih mudah untuk mengatur warna secara terprogram. Gunakan metode di bawah ini, Checkbox.setButtonTintList (ColorStateList.valueOf (getContext (). GetColor (R.color.yourcolor)))
sumber
Anda dapat menggunakan baris kode di bawah ini untuk mengubah latar belakang Kotak Centang secara dinamis dalam kode java Anda.
Jawaban ini dari situs ini . Anda juga dapat menggunakan situs ini untuk mengubah warna RGB Anda ke nilai Hex, Anda perlu memberi makan parseColor
sumber