Тема игнорируется в пользовательском представлении - PullRequest
0 голосов
/ 31 мая 2018

Я расширил класс Chip из библиотеки поддержки 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

...