我一直在尝试更改底部EditText
行的颜色,但我的EditText
仍然不想改变颜色,但是它已经改变了颜色。使用Material
中的样式。
我已尝试根据这些答案更改颜色:link
所以我的EditText
形式为Material
,但不是我设定的颜色。
我已将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>
答案 0 :(得分:8)
您必须在应用主题(或活动主题)中设置colorControlActivated
,colorControlHighlight
和colorControlNorma
l,而不是编辑文字样式。
这样的事情:
<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>
答案 1 :(得分:2)
要解决此问题,请尝试使用android.support.v7.widget.AppCompatEditText
而不是EditText
。您应该始终将其用于以编程方式创建的视图。
很确定你做到了,但要确保你在values
文件夹中编辑主题,而不是values-v21
一个(如果有的话)。
答案 2 :(得分:0)
我有类似的问题。想要改变菜单项的高亮颜色。这些属性都不起作用(Support Library v25.0.0)。
允许我在Pre-L设备上更改颜色的唯一属性是:
<item name="actionBarItemBackground">@drawable/YOUR_DRAWABLE</item>
我停止寻找进一步的解决方法,因为很明显支持库还没有为生产代码做好准备。