我的复选框样式适用于android v5 +,但不适用于v4.x
styles.xml
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="android:textColor">@color/ui_text</item>
<item name="android:windowAnimationStyle">@null</item>
<item name="android:textStyle">bold</item>
<item name="android:alertDialogStyle">@style/AppDlg</item>
<item name="android:radioButtonStyle">@style/RadioButtonStyle</item>
<item name="android:checkboxStyle">@style/CheckBoxStyle</item>
<item name="android:editTextStyle">@style/EditTextStyle</item>
</style>
<style name="RadioButtonStyle" parent="CheckBoxStyle">
<item name="android:textColor">@color/ui_text</item>
<item name="android:textStyle">bold</item>
<item name="android:button">@drawable/radiobutton</item>
</style>
<style name="CheckBoxStyle" parent="@android:style/Widget.Holo.CompoundButton.CheckBox">
<item name="android:textColor">@color/ui_text</item>
<item name="android:paddingLeft">8dip</item>
<item name="android:drawablePadding">12dip</item>
<item name="android:textStyle">bold</item>
<item name="android:button">@drawable/checkbox</item>
<item name="android:buttonTint">@color/primary</item>
<item name="android:layout_width">@dimen/checkbox_size</item>
<item name="android:layout_height">@dimen/checkbox_size</item>
</style>
...
我正在编译,目标是SDK 25,最低SDK为15.我使用的是support-v4:25.3.0,appcompat-v7:25.3.0,设计:25.3.0
Android Studio在styles.xml中给出了一个关于buttonTint的错误,要求最低API级别为21,但即使删除了这一行,我也会得到相同的行为(复选框在5.x上设置样式,但不在4.x上设置)
答案 0 :(得分:0)
似乎我需要将以下行添加到styles.xml
<item name="checkboxStyle">@style/CheckBoxStyle</item>
<item name="radioButtonStyle">@style/RadioButtonStyle</item>
赞美那些已经存在的线......
<item name="android:radioButtonStyle">@style/RadioButtonStyle</item>
<item name="android:checkboxStyle">@style/CheckBoxStyle</item>
<!/ P>