【发布时间】:2017-07-23 22:08:03
【问题描述】:
我尝试在this thread. 的帮助下更改我的 EditText 的下划线颜色
我做了同样的事情 - 这是 EditText 将 android:background 设置为 @drawable/edt_bg_selector。
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:id="@+id/editText4"
android:layout_weight="1"
android:elevation="0dp"
android:background="@drawable/edt_bg_selector" />
我的edt_bg_selector:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/edt_bg_selected" />
<item android:state_focused="false" android:drawable="@drawable/edt_bg_normal" />
</selector>
...edt_bg_normal.xml...
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:bottom="1dp"
android:left="-2dp"
android:right="-2dp"
android:top="-2dp">
<shape android:shape="rectangle" >
<stroke
android:width="1px"
android:color="@color/colorWhite" />
<solid android:color="#00FFFFFF" />
<padding
android:bottom="5dp"
android:left="5dp"
android:right="5dp"
android:top="5dp" />
</shape>
</item>
</layer-list>
...最后一个,edt_bg_selected.xml。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:bottom="1dp"
android:left="-2dp"
android:right="-2dp"
android:top="-2dp">
<shape android:shape="rectangle" >
<stroke
android:width="1px"
android:color="@color/colorWhite" />
<solid android:color="#00FFFFFF" />
<padding
android:bottom="5dp"
android:left="5dp"
android:right="5dp"
android:top="5dp" />
</shape>
</item>
</layer-list>
通过这段代码,我可以在 Android Studio 的设计编辑器中看到下划线的颜色变为白色。但是当我在 android 设备上运行这个项目时,还没有进行更改。选中的EditText 的下划线是我的primaryColor,未选中的EditText 是黑色的。
Android Studio 设计编辑器:
项目在安卓设备上运行:
这与我的应用程序选择的主题有什么关系吗?或者我错过了什么?
【问题讨论】:
标签: android android-edittext underline