2015-01-22 8 views
3

Когда мой флажок установлен, я хочу, чтобы цвет был @ color/colorPrimaryLight. Я могу установить его таким образом для леденца, установивКак переопределить цвет CheckBox с помощью AppCompat

android:buttonTint="@color/colorPrimaryLight" 

в CheckBox, но я не знаю, как это сделать что-нибудь, прежде чем леденец без изменения

<item name="colorControlActivated">@color/white</item> 

в моей теме.

CheckBox для Lollipop:

<CheckBox 
android:buttonTint="@color/colorPrimaryLight" 
android:id="@+id/SwapCheckbox" 
android:layout_marginTop="@dimen/margin_top" 
android:layout_marginLeft="@dimen/margin_left_right" 
android:layout_marginRight="@dimen/margin_left_right" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" /> 

и для чего перед Lollipop (и выше, чем 4.0.3):

<CheckBox 
android:id="@+id/SwapCheckbox" 
android:layout_marginTop="@dimen/margin_top" 
android:layout_marginLeft="@dimen/margin_left_right" 
android:layout_marginRight="@dimen/margin_left_right" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" /> 

И у меня также есть в теме для моего приложения:

<style name="AppTheme" parent="Theme.AppCompat.Light"> 
//... 
<item name="colorControlActivated">@color/white</item> 
//... 
</style> 

Я не могу изменить colorControlActivated, поскольку он должен быть белым для индикатора в моем ViewPager. В любом случае, чтобы изменить цвет фона моего флажка (даже если он имеет стиль Holo по умолчанию, но лучше всего, чтобы он был установлен на цвет @ colorPrimaryLight)?

ответ

8

Используйте следующее свойство в Compat теме App как ниже

<style name="AppTheme" parent="Theme.AppCompat.Light"> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

и использовать android.support.v7.widget.AppCompatCheckBox instead of CheckBox

+0

Да. Это правда –

Смежные вопросы