2016-05-13 2 views
2

Wie in, dieser unter: enter image description hereWie lautet der Name der Checkbox Material Design in Android (android.R.drawable. {Checkbox})?

Ich brauche diese Standard-ziehbar so dass ich programmatisch es mein automatisch generierte Kontrollkästchen Stil kann, etwa so:

checkBox.setButtonDrawable(R.drawable.checkbox_style); 

Ich brauche diese Checkbox ziehbar weil Samsung GT-I9300 mit Android 4.3 (Jellybean) überschreibt diesen Stil oben, etwa so:

enter image description here

Das ist mein app Thema:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:windowBackground">@color/colorPrimary</item> 

    <item name="colorControlNormal">#88FFFFFF</item> 
    <item name="colorControlActivated">#88FFFFFF</item> 
    <item name="colorControlHighlight">@color/colorAccent</item> 
    <item name="android:textColorHint">@android:color/white</item> 

</style> 

Wie lautet der Name, wie android.R.drawable.(...), bitte?

+2

Sie 'appCompatCheckbox Widget' von Material Design mit tun. Überprüfen Sie diese http://www.materialdoc.com/check-box/ –

Antwort

7
<style name="Widget.CompoundButton.CheckBox"> 
    <item name="android:background">@android:drawable/btn_check_label_background</item> 
    <item name="android:button">?android:attr/listChoiceIndicatorMultiple</item> 
</style> 
+1

Vielen Dank. Ich hoffe, dass es den Moderatoren nichts ausmacht, Ihnen so zu danken. –

+0

@MonicaLabbao Nein, werden sie nicht. Aber wenn Sie meine Antwort nützlich finden, können Sie dies als Antwort akzeptieren :) –

+0

Es funktioniert für mich. Ich akzeptiere diese Antwort auch. :) –

2

Wenn Sie den Standard-Zeichensatz verwenden möchten, müssen Sie setButtonDrawable nicht festlegen. Verwenden Sie einfach App Compart (Unterstützung v7) seine Arbeit für Android API 7 zu aktuellen Android API 23 (auch animierte Kontrollkästchen).

fügen Sie diese in compile 'com.android.support:appcompat-v7:23.2.0' in build.gradle Nutzung ** App Compart Theme ** mit colorAccent

+0

Samsung GT-I9300 mit Android 4.3 (Jellybean) überschreibt dieses Thema mit Jellybean. Ich füge meiner Frage ein Bild hinzu. –

+1

zeigen Sie mir App-Thema in Ihrer Frage –

5

möchten Sie tun, wie dies für das Kontrollkästchen

checkBox.setButtonDrawable(R.drawable.abc_btn_check_material); 

oder Sie können AppCompatCheckBox verwenden wie diese

LinearLayout llParent=(LinearLayout)findViewById(R.id.llParent); 
AppCompatCheckBox appCompatCheckBox = new AppCompatCheckBox(this); 
appCompatCheckBox.setText("agree or not"); 
llParent.addView(appCompatCheckBox); 

und fügen Sie die Abhängigkeit hinzu ancy für Design-Unterstützung lib build.gradle Datei

Kompilierung 'com.android.support:appcompat-v7:23.3.0'

+0

Es funktioniert, aber ich wurde gewarnt, dass das Zeichen ist privat, und es nicht animiert. Trotzdem danke! :) –

+1

danke Monica, verwenden Sie diese AppCompactCheckBox, es zeigt auch Animation, können Sie die Hintergrundfarbe mit colorAccent in color.xml für Materialfarbe ändern –