2016-05-13 28 views
2

如下面這個例子: enter image description hereandroid(android.R.drawable。{checkbox})中的Material Design複選框的名稱是什麼?

我需要這個默認的繪製,所以我可以編程它的風格我的自動生成的複選框,像這樣:

checkBox.setButtonDrawable(R.drawable.checkbox_style); 

我需要這個複選框繪製,因爲三星GT-I9300採用Android 4.3(傑利貝恩)覆蓋這種風格上面,像這樣:

enter image description here

這是我的應用程序的主題:

<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> 

這是什麼名字,請問android.R.drawable.(...)?如果你想使用默認的繪製,然後無需設置setButtonDrawable

+2

可以使用材料設計的'appCompatCheckbox Widget'做。勾選此http://www.materialdoc.com/check-box/ –

回答

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

謝謝。我希望版主不會介意感謝你這樣。 –

+0

@MonicaLabbao不,他們不會。但是,如果你發現我的答案有用,你可以接受這個答案:) –

+0

它適用於我。我也接受這個答案。 :) –

2

。只需使用應用艙室(支持V7)其針對Android API 7工作,目前Android API 23(也動畫複選框)。

compile 'com.android.support:appcompat-v7:23.2.0'build.gradle使用**應用COMPART主題**與colorAccent

+0

三星GT-I9300採用Android 4.3(傑利貝恩)覆蓋與傑利貝恩這一主題。我正在爲我的問題添加一張圖片。 –

+1

在您的問題中向我顯示您的應用主題 –

5

你想這樣的複選框

checkBox.setButtonDrawable(R.drawable.abc_btn_check_material); 

不添加,或者你可以使用AppCompatCheckBox這樣

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

,並添加依賴ancy設計支持LIB文件的build.gradle

編譯 'com.android.support:appcompat-v7:23.3.0'

+0

它的工作原理,但我被警告說drawable是私人的,它不生動。謝謝你! :) –

+1

thanx Monica,使用這個AppCompactCheckBox,它也顯示動畫,你可以在color.xml中使用colorAccent更改材質顏色的背景顏色 –