AppCompat和EditText在不同的API上有不同的下划线

Dam*_*lak 7 android android-appcompat android-edittext

我正在尝试为下划线颜色更改EditText(它将用于输入的验证,因此它必须能够在运行时更改).

我正在使用AppCompat库.问题是在API 21及更高版本上,我看到透明的黑色线条(灰色叠加层),而不是粗体版本.

如何使其与API 16相同?

我用这段代码来改变色调:

    final Drawable originalDrawable = view.getBackground();
    final Drawable wrappedDrawable = DrawableCompat.wrap(originalDrawable);
    DrawableCompat.setTint(wrappedDrawable, Color.RED);
    setBackground(view,wrappedDrawable);
Run Code Online (Sandbox Code Playgroud)

PIC

Dam*_*lak 6

通过将这些行添加到我的主题找到的解决方案

    <item name="editTextStyle">@style/Base.V7.Widget.AppCompat.EditText</item>
    <item name="editTextBackground">@drawable/abc_edit_text_material</item>
Run Code Online (Sandbox Code Playgroud)