使用 Appcompat v7 自定义 EditText 外观
Android 的 AppCompat v7 库在各个 Android 版本之间保持一致性。然而,用户在更改 EditText 的外观时可能会遇到困难,尤其是底线和强调色。
最初,尝试通过 android:editTextStyle 修改编辑样式并不成功。背景颜色和文本颜色等属性可以更改,但底线或强调颜色不能更改。通过 android:background 和特定属性值探索自定义可绘制图像也被证明是徒劳的。
检查 Android API 21 源代码后,假设 colorControlActivated 和 colorControlNormal 用于控制 EditText 外观。然而,在 EditText 样式中覆盖这些属性并没有任何效果。
终于找到了解决方案。通过覆盖应用主题定义中的 colorControlActivated、colorControlHighlight 和 colorControlNormal,可以实现所需的颜色自定义。
<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>
将此主题应用于 Activity 将获得所需的 EditText 外观。
以上是如何使用 AppCompat v7 自定义 EditText 外观?的详细内容。更多信息请关注PHP中文网其他相关文章!