Android - Material 主题 - 仅更改活动标签的 colorAccent

Android - Material Theme - Change colorAccent for just active tab

这是我的自定义主题文件:

<style name="MyMaterial" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">#4CAF50</item>
    <item name="colorPrimaryDark">#4CAF50</item>
    <item name="colorAccent">#FFFFFF</item>
</style>

问题是,我只希望#FFFFFF 用于活动选项卡的下划线(如this 中的黄色),而不是激活复选框等其他控件。 best/proper 这样做的方法是什么?

附带问题: - 默认选项卡具有垂直分隔线。如何像上图那样去除它们? - 如何在标签下方添加阴影,如上图?

谢谢。

默认情况下,TabLayout, part of the Android Design Support LibrarycolorAccent 中获取选项卡指示器颜色,但您也可以使用 app:tabIndicatorColor 专门在 TabLayout 上设置不同的颜色(并且不要在主题中包含黄色作为强调色):

<android.support.design.widget.TabLayout
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  app:tabIndicatorColor="#FFFFFF" />

TabLayout does not have any separator lines, as per the [material design spec][3]. The shadow is added via elevation - if you include yourTabLayout` 在 AppBarLayout 中,您将在 Android 5.0 及更高版本的设备上获得提升。