Android Editext线条颜色

时间:2015-07-27 14:47:04

标签: android colors android-edittext themes

我目前正在为EditText设计样式。 我想要的是EditText行的颜色在未选中时为一种颜色,在焦点/激活时为另一种颜色。

使用appcompat 22.2.0和构建工具22.0.1并在EditText中使用自定义主题,我看到了:

正常:

enter image description here

选择:

editext issue

我想要替换未覆盖的线条颜色。

这是我的EditText xml:

<EditText
    android:id="@+id/editTest"
    android:theme="@style/MyEditTextTheme"                       
    android:inputType="textEmailAddress" />

风格:

<style name="MyEditTextTheme">    
    <item name="colorControlNormal">@color/color_light_blue</item>
    <item name="colorControlHighlight">@color/color_light_orange</item> 
</style>

我做错了吗?

1 个答案:

答案 0 :(得分:1)

您必须创建一个类似于此的drawable,只需添加一个选择器以添加选定/未选定状态:

(基本上我正在做的是制作一个带有X颜色边框的正方形,然后我创建一个背景颜色的正方形,但是将它向上移动边框的宽度,这样底部的颜色就不会覆盖但是左,右,顶部将被覆盖)

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item >
        <shape android:shape="rectangle">
            <solid android:color="@color/your_color" />
        </shape>
    </item>
    <item android:bottom="2dp">
        <shape

            android:shape="rectangle">

            <solid android:color="@color/background_color" />
            <stroke android:width="1dp" android:color="@color/background_color_to_mask_the_square"/>

        </shape>
    </item>


</layer-list>