问题:
使用Appcompat v7实现时Android 各版本 UI 一致,如何修改 EditTexts 的底线和强调色?
答案:
Material Design Color Properties:
尽管在 Material Design 的 EditText 中明显使用了 colorControlActivated 和 colorControlNormal,但这些属性在使用 Appcompat 时没有任何效果。
主题覆盖:
解决方案涉及覆盖应用程序主题中的这些颜色属性。下面是一个示例:
<code class="xml"><style name="Theme.App.Base" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorControlNormal">#c5c5c5</item> <item name="colorControlActivated">@color/accent</item> <item name="colorControlHighlight">@color/accent</item> </style></code>
这会覆盖应用程序主题中默认的 colorControlNormal、colorControlActivated 和 colorControlHighlight 属性,有效地更改 EditTexts 的底线和强调色。
用法:
将此主题应用于您想要自定义 EditText 颜色的活动。例如:
<code class="xml"><activity android:name=".MainActivity" android:theme="@style/Theme.App.Base" /></code>
通过应用此修改后的主题,EditTexts 将继承自定义的底线和强调色。
以上是如何在Appcompat v7中修改EditText底线和强调色?的详细内容。更多信息请关注PHP中文网其他相关文章!