¿Cómo cambio el CheckBox
color predeterminado en Android?
Por defecto, el CheckBox
color es verde, y quiero cambiar este color.
Si no es posible, dígame cómo hacer una costumbre CheckBox
.
247
¿Cómo cambio el CheckBox
color predeterminado en Android?
Por defecto, el CheckBox
color es verde, y quiero cambiar este color.
Si no es posible, dígame cómo hacer una costumbre CheckBox
.
android:buttonTint="@color/mybrown"
es una forma fácil de cambiar el color de la caja.app:buttonTint="@color/mybrown"
, de esta manera puede funcionar en API <21Respuestas:
Si
minSdkVersion
tiene más de 21 años, utilice elandroid:buttonTint
atributo para actualizar el color de una casilla de verificación:En los proyectos que usan la biblioteca AppCompat y admiten versiones de Android inferiores a 21, puede usar una versión compatible del
buttonTint
atributo:En este caso, si desea subclasificar a
CheckBox
, no olvide usarloAppCompatCheckBox
.RESPUESTA ANTERIOR:
Puede cambiar
CheckBox
s dibujable usando elandroid:button="@drawable/your_check_drawable"
atributo.fuente
contentControl
opciones: materialdoc.com/components/selection-controlsPuede cambiar el color directamente en XML. Uso
buttonTint
para el cuadro: (a partir del nivel 23 de API)También puede hacer esto usando
appCompatCheckbox v7
niveles de API anteriores:fuente
puede configurar el tema de Android de la casilla de verificación para obtener el color que desea en su styles.xml agregar:
luego en su archivo de diseño:
a diferencia del uso de
android:buttonTint="@color/CHECK_COLOR"
este método funciona bajo la API 23fuente
Versión programática:
fuente
Úselo
buttonTint
para cambiar el color del botón y el selector de color para las versiones superiores a 21 api.res / colors / checkbox_filter_tint.xml
fuente
values
recurso. Como lo indica la ruta que se muestra arriba, tiene que estar dentro de lacolors
carpeta de recursos.Sugeriría usar el enfoque de estilo en Android como la forma de configurar vistas de Android incorporadas, agregar un nuevo estilo en su proyecto:
y agregue asignar este estilo al tema de la casilla de verificación: android: theme = "@ style / youStyle"
espero que esto ayude.
fuente
fuente
Agregue esta línea en su
styles.xml
archivo:fuente
buttonTint funcionó para mí intentar
android: buttonTint = "@ color / blanco"
fuente
Me enfrenté al mismo problema, obtuve una solución usando la técnica a continuación. Copie el
btn_check.xml
deandroid-sdk/platforms/android-#(version)/data/res/drawable
en la carpeta dibujable de su proyecto y cambie los estados de imagen "encendido" y "apagado" a sus imágenes personalizadas.Entonces tu xml solo necesitará
android:button="@drawable/btn_check"
Si desea usar diferentes iconos predeterminados de Android, puede usar:
fuente
Puedes cambiar el
checkbox
color usando una línea de código simpleandroid:buttonTint="@color/app_color" //whatever color
fuente
Enfoque 100% robusto.
En mi caso, no tenía acceso al archivo fuente de diseño XML, ya que recibo Checkbox de una libra de MaterialDialog de terceros. Entonces tengo que resolver esto programáticamente.
res / color / checkbox_tinit_dark_theme.xml:
Luego aplíquelo a la casilla de verificación:
PD Además, si alguien está interesado, así es cómo puede obtener su casilla de verificación desde el cuadro de diálogo MaterialDialog (si lo configura con
.checkBoxPromptRes(...)
):Espero que esto ayude.
fuente
cree un xml
Drawable resource file
debajores->drawable
y asígnele un nombre, por ejemplo,checkbox_custom_01.xml
Cargue sus archivos de imagen de casilla de verificación personalizados (recomiendo png) a su
res->drawable
carpeta.Luego vaya a su archivo de diseño y cambie su casilla de verificación a
puede personalizar cualquier cosa, siempre que
android:button
apunte al archivo XML correcto que creó anteriormente.NOTA PARA LOS NOVEDADES: aunque no es obligatorio, es una buena práctica nombrar su casilla de verificación con una identificación única en todo su árbol de diseño.
fuente
Hola, este es el código de tema para Dark Theme y Light Theme.
Si desea cambiar el color de la casilla de verificación, el atributo "colorAccent" se usará para el estado marcado y "android: textColorSecondary" se usará para desmarcar el estado.
"actionOverflowButtonStyle" se usará para cambiar el color del icono de desbordamiento en la barra de acción.
El atributo "buttonsearch_picture" se usará para cambiar el color del tinte del botón de acción en la barra de acción. Este es un atributo personalizado en style.xml
Lo mismo es para el botón de actualización que estoy usando en mi aplicación.
El atributo "android: popupMenuStyle" se utiliza para obtener el estilo del menú emergente del tema Light en el tema Dark.
Y este es el código de barra de herramientas que estoy usando en mi aplicación Rocks Player.
Temas: -
fuente
puedes crear tu propio xml en drawable y usarlo como android: background = "@ drawable / your_xml"
en eso puedes darle todo a la esquina
fuente
Puede usar las siguientes dos propiedades en "colors.xml"
colorControlNormal es para la vista normal de la casilla de verificación, y colorControlActivated es para cuando la casilla de verificación está marcada.
fuente
Puede cambiar el color de fondo de la
<CheckBox>
incrustación dentro de a<LinearLayout>
. Luego cambie el color de fondo de<LinearLayout>
al color que desee.fuente
Deberías probar el siguiente código. Me esta funcionando.
y CheckBox
fuente
Si va a usar los íconos de Android, como se describió anteriormente ...
.. es una buena opción, pero para que esto funcione, descubrí que debes agregar la lógica de alternar para mostrar / ocultar la marca de verificación, así:
fuente
La mayoría de las respuestas pasan por el archivo xml. Si encuentra una respuesta activa para la mayoría de las versiones de Android y solo tiene un color para los dos estados Marque una casilla de verificación: aquí está mi solución:
Kotlin:
Java:
fuente
Hay una manera mucho más fácil de configurar el color mediante programación. Utilice el siguiente método, Checkbox.setButtonTintList (ColorStateList.valueOf (getContext (). GetColor (R.color.yourcolor)))
fuente
Puede usar las siguientes líneas de código para cambiar dinámicamente el fondo de la casilla de verificación en su código Java.
Esta respuesta fue de este sitio . También puede usar este sitio para convertir su color RGB al valor hexadecimal, necesita alimentar el parseColor
fuente