我使用appcompat v7在Android 5及更低版本上获得一致的外观。它相当有效。但是,我不知道如何更改EditText的底线颜色和强调色。可能吗
我试图定义一个自定义的android:editTextStyle(参见下文),但我只成功地更改了完整的背景色或文本颜色,而没有更改底线或强调色。是否有要使用的特定属性值?我是否必须通过android:background属性使用自定义可绘制图像?不能用六边形指定颜色吗
<;style name=“Theme.App.Base”parent=“Theme.AppCompat.Light.darkaActionBar”>;
<;item name=“android:editTextStyle”&[email protected]/Widget.App.EditText</项目>;
</风格>;
<;style name=“Widget.App.EditText”parent=“Widget.AppCompat.EditText”>;
???
</风格>;
根据android API 21来源,具有材质设计的编辑文本似乎使用colorControlActivated和colorControlNormal。因此,我尝试在以前的样式定义中替代这些特性,但没有效果。可能appcompat没有使用它。不幸的是,我找不到最新版本的appcompat with material design的源代码
最后,我找到了一个解决办法。它只是覆盖应用程序主题定义中的colorControlActivated、colorControlHighlight和colorControlNormal的值,而不是edittext样式。然后,考虑将此主题用于您想要的任何活动。以下是一个例子:
<;style name=“Theme.App.Base”parent=“Theme.AppCompat.Light.darkaActionBar”>;
<;项目名称=“colorControlNormal”>#C5</项目>;
<;项目名称=“colorControlActivated”&[email protected]颜色/重音</项目>;
<;项目名称=“colorControlHighlight”&[email protected]颜色/重音</项目>;
</风格>;