Wie kann ich die Farbe einer CheckBox ändern?

Wie ändere ich die Standard- CheckBox Farbe in Android?
Standardmäßig ist die CheckBox Farbe grün und ich möchte diese Farbe ändern.
Wenn es nicht möglich ist, bitte sagen Sie mir, wie man eine benutzerdefinierte CheckBox ?

  • Wie verarbeitet man bei der Aktivierung eine Aktion?
  • Twilio vs Google Stimme api für SMS
  • Wie kann ich die Dauer für eine Android AnimationDrawable Animation on-the-fly ändern?
  • So aktualisieren Sie Youtube Player View onItemClickListener () in einem ListView
  • Übergeben von Verweis auf Aktivität zu Utility-Klasse Android
  • Löschen Sie meine eigenen apps Daten programmatisch
  • Gleichzeitige HttpClient-Anforderung mit mehreren AsyncTasks
  • Android Native Debug (ndk-gdb) auf HTC Desire: run-as Fehler?
  • Installation zeigt Fehler in der Konsole: INSTALLIEREN VERLETZTE KONFLIKTANLEITUNG
  • Wie zu tun 'beschäftigt' Animation in Android?
  • Ist ein großes Java-Wissen für Android erforderlich?
  • Error 'Keine Ressource Identifier gefunden' mit Android Beispielprojekt
  • 14 Solutions collect form web for “Wie kann ich die Farbe einer CheckBox ändern?”

    Sie können CheckBox s zeichen mit android:button="@drawable/your_check_drawable" Attribut android:button="@drawable/your_check_drawable" .

    Sie können direkt in der xml färben. Verwenden Sie buttonTint für die Box: (ab API Level 23)

     <CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" android:buttonTint="@color/CHECK_COLOR" /> 

    Sie können dies auch mit appCompatCheckbox v7 für ältere APIs tun:

     <android.support.v7.widget.AppCompatCheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" app:buttonTint="@color/COLOR_HERE" /> 

    Sie können android Thema der Checkbox, um die Farbe, die Sie wollen in Ihrem styles.xml hinzufügen:

     <style name="checkBoxStyle" parent="Base.Theme.AppCompat"> <item name="colorAccent">CHECKEDHIGHLIGHTCOLOR</item> <item name="android:textColorSecondary">UNCHECKEDCOLOR</item> </style> 

    Dann in deiner Layoutdatei:

     <CheckBox android:theme="@style/checkBoxStyle" android:id="@+id/chooseItemCheckBox" android:layout_width="wrap_content" android:layout_height="wrap_content"/> 

    Im Gegensatz zu android:buttonTint="@color/CHECK_COLOR" funktioniert diese Methode unter Api 23

    Programmische Version:

     int states[][] = {{android.R.attr.state_checked}, {}}; int colors[] = {color_for_state_checked, color_for_state_normal} CompoundButtonCompat.setButtonTintList(checkbox, new ColorStateList(states, colors)); 
     <CheckBox android:id="@+id/chk_remember_signup" android:layout_width="wrap_content" android:layout_height="wrap_content" android:buttonTint="@android:color/white" android:text="@string/hint_chk_remember_me" /> 

    Fügen Sie diese Zeile in Ihre styles.xml Datei hinzu:

     <style> <item name="android:colorAccent">@android:color/holo_green_dark</item> </style> 

    Ich würde vorschlagen, verwenden sie Stil Ansatz in Android als die Möglichkeit, integrierte Android-Ansichten zu konfigurieren, fügen Sie neue Stil in Ihrem Projekt:

     <style name="yourStyle" parent="Base.Theme.AppCompat"> <item name="colorAccent">your_color</item> <!-- for uncheck state --> <item name="android:textColorSecondary">your color</item> <!-- for check state --> </style> 

    Und füge diesen Stil dem Thema des Kontrollkästchens hinzu: android: theme = "@ style / youStyle"

    hoffe das hilft.

    Ich stand dem gleichen Problem gegenüber, ich bekam eine Lösung unter Technik. btn_check.xml die btn_check.xml von android-sdk/platforms/android-#(version)/data/res/drawable in den zeichenbaren Ordner deines Projekts und ändere die 'on' und 'off' Bildzustände zu deinen benutzerdefinierten Bildern.
    Dann wird deine xml nur noch android:button="@drawable/btn_check"

     <CheckBox android:button="@drawable/btn_check" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" /> 

    Wenn Sie verschiedene Standard-Android-Symbole verwenden möchten, können Sie:

     android:button="@android:drawable/..." 

    Du kannst dein eigenes xml in ziehbar erstellen und das als android benutzen: background = "@ drawable / your_xml"

    Da kannst du grenze eck alles geben

     <item> <shape> <gradient android:endColor="#fff" android:startColor="#fff"/> <corners android:radius="2dp"/> <stroke android:width="15dp" android:color="#0013669e"/> </shape> </item> 

    Sie können die Hintergrundfarbe der <CheckBox> indem Sie sie in ein <LinearLayout> . Dann ändern Sie die Hintergrundfarbe von <LinearLayout> auf die <LinearLayout> Farbe.

    Wenn du die Android-Icons benutzt hast, wie oben beschrieben ..

     android:button="@android:drawable/..." 

    .. es ist eine schöne Option, aber für diese zu arbeiten – ich fand Sie müssen hinzufügen toggle Logik zu zeigen / verstecken das Häkchen, wie folgt:

      checkBoxShowPwd.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { // checkbox status is changed from uncheck to checked. public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { int btnDrawable = android.R.drawable.checkbox_off_background; if (isChecked) { btnDrawable = android.R.drawable.checkbox_on_background; } checkBoxShowPwd.setButtonDrawable(btnDrawable); } }); 

    Erstellen Sie eine xml Drawable resource file unter res->drawable und nennen Sie es, z. B. checkbox_custom_01.xml

     <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_checked="true" android:drawable="@drawable/checkbox_custom_01_checked_white_green_32" /> <item android:state_checked="false" android:drawable="@drawable/checkbox_custom_01_unchecked_gray_32" /> </selector> 

    Laden Sie Ihre benutzerdefinierten Checkbox-Image-Dateien (ich empfehle png) zu Ihrem res->drawable Ordner.

    Dann gehen Sie in Ihre Layout-Datei und ändern Sie Ihre Checkbox zu

     <CheckBox android:id="@+id/checkBox1" android:button="@drawable/checkbox_custom_01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:focusable="false" android:focusableInTouchMode="false" android:text="CheckBox" android:textSize="32dip"/> 

    Sie können alles anpassen, solange android:button auf die richtige XML-Datei, die Sie zuvor erstellt haben.

    HINWEIS ZU NEWBIES: Obwohl es nicht zwingend ist, ist es trotzdem eine gute Praxis, um dein Checkbox mit einer eindeutigen ID in deinem gesamten Layoutbaum zu benennen.

    Sie können die folgenden zwei Eigenschaften in "colors.xml" verwenden

     <color name="colorControlNormal">#eeeeee</color> <color name="colorControlActivated">#eeeeee</color> 

    ColorControlNormal ist für die normale Ansicht des Kontrollkästchens, und colorControlActivated ist für, wenn das Kontrollkästchen aktiviert ist.

    Du solltest den Code ausprobieren. Es funktioniert für mich.

     <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/checked" android:state_checked="true"> <color android:color="@color/yello" /> </item> <!-- checked --> <item android:drawable="@drawable/unchecked" android:state_checked="false"> <color android:color="@color/black"></color> </item> <!-- unchecked --> <item android:drawable="@drawable/checked" android:state_focused="true"> <color android:color="@color/yello"></color> </item> <!-- on focus --> <item android:drawable="@drawable/unchecked"> <color android:color="@color/black"></color> </item> <!-- default --> </selector> 

    Und CheckBox

     <CheckBox Button="@style/currentcy_check_box_style" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="20dp" android:text="@string/step_one_currency_aud" /> 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.