Android colorControlNormal xml属性在Lollipop之前不起作用

Ekt*_*974 12 android android-appcompat android-support-library material-design android-5.0-lollipop

我一直试图改变EditText底部线条的颜色,但我EditText仍然不想改变颜色,但它使用的是样式Material.

我试图改变这些答案背后的颜色:链接

所以我有一个EditTextMaterial形式,但不是颜色我已经设置.

我已经输入appcompat-v7了我的Gradle配置文件,它已经在为主色调工作了.

<style name="AppBaseTheme.MiddleTheme.Widget.EditText" parent="Theme.AppCompat.Light">
    <item name="colorPrimary">@color/middle_primary</item>
    <!-- Those 3 lines are staying in red war in IntelliJ but it does build the project -->
    <item name="android:colorControlNormal">@color/middle_sqool_primary</item>
    <item name="android:colorControlActivated">@color/middle_sqool_primary</item>
    <item name="android:colorControlHighlight">@color/middle_sqool_primary</item>            
</style>
Run Code Online (Sandbox Code Playgroud)

Gab*_*tti 8

您必须在您的应用主题(或活动主题)中设置colorControlActivated,colorControlHighlight而不是在您的edittext样式中.colorControlNorma

像这样的东西:

<style name="Theme.App.Base" parent="Theme.AppCompat.Light">
    <item name="colorControlNormal">@color/middle_sqool_primary</item>
    <item name="colorControlActivated">@color/middle_sqool_primary</item>
    <item name="colorControlHighlight">@color/middle_sqool_primary</item>
</style>
Run Code Online (Sandbox Code Playgroud)

  • 这不会做任何改变. (3认同)
  • 你确定你的活动正在使用这种风格吗? (2认同)