Android 带有自定义主题的EditText在选择句柄下显示下划线

Android 带有自定义主题的EditText在选择句柄下显示下划线,android,android-edittext,android-theme,Android,Android Edittext,Android Theme,我试图通过应用主题来修改EditText的下划线颜色 风格: <style name="MyTheme.EditText" parent="Widget.AppCompat.EditText"> <item name="colorControlActivated">@color/green</item> </style> @颜色/绿色 编辑文本: <EditText android:id="@+id/editText_a

我试图通过应用主题来修改EditText的下划线颜色

风格:

<style name="MyTheme.EditText" parent="Widget.AppCompat.EditText">
    <item name="colorControlActivated">@color/green</item>
</style>

@颜色/绿色
编辑文本:

<EditText
    android:id="@+id/editText_amount"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/hint_enter_amount"
    android:theme="@style/MyTheme.EditText"/>

基本上它可以工作,但当我尝试选择或移动光标时,选择手柄也会加下划线。你可以在截图中看到这一点


有人知道如何修复此问题吗?

您应该删除父属性。这是仅由API 23设备引起的

<style name="MyTheme.EditText">
    <item name="colorControlActivated">@color/green</item>
</style>

@颜色/绿色

您可以将此样式用作

<EditText 
   style="@style/MyTheme.EditText"/>
此主题所有者的每个子视图都将具有绿色背景

“Widget.AppCompat.EditText”
是一种样式,将
?attr/editTextBackground
作为
“android:background”
引用。在v21/values-21.xml文件中,
@drawable/abc_edit_text_material
被定义为
editTextBackground

例如,
@drawable/abc\u edit\u text\u material
成为您的EditText和SelectionHandler的背景。

我也有同样的问题

我的布局在蓝色框中显示编辑文本。在那里,我希望有一个白色的文本,一个白色的下划线和一个白色的选择控件。 我已经在AppTheme中设置了所有内容。一切都好

但我也有一个回收站,吹蓝盒子。RecyclerView有包含Edittext的白卡。白色文本、下划线和控件在白卡中没有任何意义。:)

因此,我尝试将文本、下划线和控件的颜色更改为深灰色。但是没有成功。我和这个问题中的控件有同样的问题

我试着使用已解决的答案,但这对我没有帮助。 也许是我的错,我不知道

所以我在这里发布了我的解决方案,即使这个问题已经回答了

在我添加的styles.xml中:

<style name="RecyclerEditText">
    <item name="colorAccent">@color/darkGray</item>
    <item name="colorControlNormal">@color/darkGray</item>
    <item name="colorControlActivated">@color/darkGray</item>
</style>
--

现在我在控制图标中没有偏移,也没有双下划线

非常感谢@litmon! 你把我推到了“移除家长”的想法上

<item name="android:background">@color/green</item>
<style name="RecyclerEditText">
    <item name="colorAccent">@color/darkGray</item>
    <item name="colorControlNormal">@color/darkGray</item>
    <item name="colorControlActivated">@color/darkGray</item>
</style>
android:textColor="@color/darkGray"
android:textColorHint="@color/darkGray"
android:theme="@style/RecyclerEditText"