Base.Widget.Design.TabLayout не работает как родитель в style.xml в Android - PullRequest
0 голосов
/ 16 мая 2018

Я искал в Google, но не могу найти решение. Мне нужно определить различные стили для Tablayout для тем. Я понимаю, как включить мой стиль Toolbar, но не могу заставить его работать из-за Base.Widget.Design.TabLayout. Когда Я определяю его как имя, оно работает, но я могу использовать его только для одного стиля. Когда я определяю его как родительский и включаю его в мою тему с android:tabWidgetStyle, оно не работает

Как родитель (который не работает)

<style name="tabayout" parent="Base.Widget.Design.TabLayout">
        <item name="tabSelectedTextColor">@color/white</item>
        <item name="tabIndicatorColor">@color/deep_orange_300_colorAccent</item>
        <item name="tabBackground">@color/deep_orange_300_colorAccent</item>
    </style>

Второй (который работает, но я могу использовать его только один раз, но мне нужно определить стиль 14)

<style name="Base.Widget.Design.TabLayout" parent="android:Widget">
        <item name="tabSelectedTextColor">@color/white</item>
        <item name="tabIndicatorColor">@color/red_200_colorAccent</item>
        <item name="tabBackground">@color/red_200_colorAccent</item>
        <item name="tabTextColor">@color/red_200_colorPrimaryDark</item>
    </style>

Редактировать

Я хочу задать стиль TabLayout для определенной пользовательской темы. Я хочу сделать Toolbar background textColor и т. Д. Для выбранного цвета пользователем. Поэтому я использовал Base.Widget.Design.TabLayout в качестве имени для стиля TabLayout и включил его в android:tabWidgetStyle, это сработало. Но когда я использую его как parent, оно не работает. Вот моя тема

Это работает. Но когда я определяю Base.Widget.Design.TabLayout как родитель, это не работает.

<style name="AppTheme_red_200" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/red_200_colorPrimary</item>
        <item name="colorPrimaryDark">@color/red_200_colorPrimaryDark</item>
        <item name="colorAccent">@color/red_200_colorAccent</item>
        <item name="android:tabWidgetStyle">@style/Base.Widget.Design.TabLayout</item>
        <item name="android:textColor">@color/red_400_colorPrimaryDark</item>
    </style>

    <style name="Base.Widget.Design.TabLayout" parent="">
        <item name="tabSelectedTextColor">@color/white</item>
        <item name="tabIndicatorColor">@color/red_200_colorAccent</item>
        <item name="tabBackground">@color/red_200_colorAccent</item>
        <item name="tabTextColor">@color/red_200_colorPrimaryDark</item>
    </style>
...