自定义视图中忽略主题

时间:2018-05-31 11:04:17

标签: android styles android-theme

我从支持库28扩展了Chip类以添加一些功能,现在我创建的每个芯片都忽略了我的主题的chipstyle属性并转换为默认属性。

这是我的扩展类(我只扩展以检测它是否是我的特殊类,所以没有代码在里面)

class ExclusiveChip @JvmOverloads constructor(
        context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
) : Chip(context, attrs, defStyleAttr) {

}

风格参数:

 <style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="chipStyle">@style/ChipStyle</item>
    </style>

 <style name="ChipStyle" parent="Widget.MaterialComponents.Chip.Action">
        <item name="checkedIconEnabled">false</item>
        <item name="chipIconSize">16dp</item>
        <item name="chipStrokeColor">@color/chip_stroke_color</item>
        <item name="chipStrokeWidth">1dp</item>
        <item name="chipBackgroundColor">@color/chip_color</item>
        <item name="android:textAppearance">@style/ChipText</item>
    </style>

比较(左,我的扩展,右,没有样式属性的原始Chip类):

enter image description here

0 个答案:

没有答案